/* ==========================================================================
   سامانه آگهی عصر ایرانیان — سیستم طراحی پرتال (نسخه ۱.۰.۰)
   Layout: sidebar shell (RTL) + topbar + card grid; newspaper mockup as hero object.
   همه انتخابگرها با شناسه‌ی ریشه محدود شده‌اند تا استایل قالب وردپرس روی پرتال اثر نگذارد.
   ========================================================================== */

/* ---------- ۱. توکن‌ها (روشن) ---------- */
:is(#nam-portal, #nam-auth, #nam-track) {
    --nam-bg: #F1F4F2;
    --nam-card-bg: #FFFFFF;
    --nam-surface-2: #F6F9F8;
    --nam-surface-3: #EAF0EE;
    --nam-text: #2A3A37;
    --nam-text-title: #0F2420;
    --nam-text-muted: #667873;
    --nam-text-faint: #98A8A4;
    --nam-border: #E2EAE8;
    --nam-border-input: #D1DCD9;
    --nam-primary: #1A433C;
    --nam-primary-hover: #12302B;
    --nam-primary-light: #E3F0EC;
    --nam-primary-ring: rgba(26, 67, 60, .22);
    --nam-on-primary: #FFFFFF;
    --nam-primary-solid: var(--nam-primary);
    --nam-primary-solid-hover: var(--nam-primary-hover);
    --nam-on-solid: #FFFFFF;
    --nam-green: #17A34A;
    --nam-green-soft: #E7F7EE;
    --nam-chart-green: #4CC9A4;
    --nam-orange: #EF8A17;
    --nam-orange-soft: #FFF2E2;
    --nam-red: #E5484D;
    --nam-red-soft: #FDEDED;
    --nam-violet: #2F8F9D;
    --nam-violet-soft: #E3F2F4;
    --nam-gold: #F59E0B;
    --nam-amber: #C98A1B;
    --nam-amber-soft: #FBF1DC;
    --nam-amber-ink: #7A5208;
    --nam-focus: #2F8A74;
    --nam-focus-ring: rgba(47, 138, 116, .2);
    --nam-ink: #10231F;
    --nam-np-paper: #FFFFFF;
    --nam-np-grid-bg: #F1F5F4;
    --nam-np-rule: #12302B;
    --nam-overlay: rgba(10, 24, 21, .55);
    --nam-shadow-sm: 0 1px 2px rgba(12, 32, 28, .05);
    --nam-shadow: 0 1px 2px rgba(12, 32, 28, .04), 0 10px 28px -14px rgba(12, 32, 28, .16);
    --nam-shadow-lg: 0 24px 60px -20px rgba(12, 32, 28, .35);
    --nam-radius: 16px;
    --nam-radius-sm: 10px;
    --nam-font: 'Vazirmatn', 'Vazir', Tahoma, 'Segoe UI', sans-serif;
    color-scheme: light;
}

/* ---------- ۲. توکن‌ها (تیره) — حالت تیره سایت یا انتخاب کاربر ---------- */
#nam-portal[data-nam-theme="dark"], #nam-auth[data-nam-theme="dark"], #nam-track[data-nam-theme="dark"],
.dark :is(#nam-portal, #nam-auth, #nam-track), .dark-mode :is(#nam-portal, #nam-auth, #nam-track), body.dark-theme :is(#nam-portal, #nam-auth, #nam-track),
[data-theme="dark"] :is(#nam-portal, #nam-auth, #nam-track), [data-bs-theme="dark"] :is(#nam-portal, #nam-auth, #nam-track) {
    --nam-bg: #0B1513;
    --nam-card-bg: #11201D;
    --nam-surface-2: #172926;
    --nam-surface-3: #1D322E;
    --nam-text: #C5D4D0;
    --nam-text-title: #F0F7F5;
    --nam-text-muted: #8AA09B;
    --nam-text-faint: #5E7570;
    --nam-border: #223632;
    --nam-border-input: #2C443F;
    --nam-primary: #5FD6B4;
    --nam-primary-hover: #7BE3C6;
    --nam-primary-light: rgba(95, 214, 180, .14);
    --nam-primary-ring: rgba(95, 214, 180, .3);
    --nam-on-primary: #0A1A17;
    --nam-primary-solid: #1D6B59;
    --nam-primary-solid-hover: #268068;
    --nam-on-solid: #FFFFFF;
    --nam-green: #3DD17A;
    --nam-green-soft: rgba(61, 209, 122, .12);
    --nam-chart-green: #5FD6B4;
    --nam-orange: #FFA94D;
    --nam-amber: #E7B04A;
    --nam-amber-soft: rgba(231, 176, 74, .14);
    --nam-amber-ink: #F2CC85;
    --nam-focus: #5FD6B4;
    --nam-focus-ring: rgba(95, 214, 180, .26);
    --nam-orange-soft: rgba(255, 169, 77, .13);
    --nam-red: #FF6B70;
    --nam-red-soft: rgba(255, 107, 112, .12);
    --nam-violet: #6CC3D1;
    --nam-violet-soft: rgba(108, 195, 209, .14);
    --nam-ink: #060D0B;
    --nam-np-paper: #0E1B18;
    --nam-np-grid-bg: #152622;
    --nam-np-rule: #C5D4D0;
    --nam-overlay: rgba(2, 4, 10, .7);
    --nam-shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);
    --nam-shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 12px 30px -16px rgba(0, 0, 0, .6);
    --nam-shadow-lg: 0 30px 70px -24px rgba(0, 0, 0, .8);
    color-scheme: dark;
}
/* انتخاب صریح «روشن» توسط کاربر بر حالت تیره‌ی سایت مقدم است */
#nam-portal[data-nam-theme="light"], #nam-auth[data-nam-theme="light"], #nam-track[data-nam-theme="light"] {
    --nam-bg: #F1F5F4; --nam-card-bg: #FFFFFF; --nam-surface-2: #F6F9F8; --nam-surface-3: #EAF0EE;
    --nam-text: #2A3A37; --nam-text-title: #0F2420; --nam-text-muted: #667873; --nam-text-faint: #98A8A4;
    --nam-border: #E2EAE8; --nam-border-input: #D1DCD9; --nam-primary: #1A433C; --nam-primary-hover: #12302B;
    --nam-primary-light: #E3F0EC; --nam-primary-ring: rgba(26, 67, 60, .22);
    --nam-amber: #C98A1B; --nam-amber-soft: #FBF1DC; --nam-amber-ink: #7A5208; --nam-focus: #2F8A74; --nam-focus-ring: rgba(47, 138, 116, .2); --nam-green: #17A34A; --nam-green-soft: #E7F7EE; --nam-chart-green: #4CC9A4; --nam-orange: #EF8A17; --nam-orange-soft: #FFF2E2;
    --nam-red: #E5484D; --nam-red-soft: #FDEDED; --nam-violet: #2F8F9D; --nam-violet-soft: #E3F2F4; --nam-ink: #10231F;
    --nam-np-paper: #FFFFFF; --nam-np-grid-bg: #F1F5F4; --nam-np-rule: #12302B; --nam-overlay: rgba(10, 24, 21, .55);
    --nam-shadow-sm: 0 1px 2px rgba(12, 32, 28, .05);
    --nam-shadow: 0 1px 2px rgba(12, 32, 28, .04), 0 10px 28px -14px rgba(12, 32, 28, .16);
    --nam-shadow-lg: 0 24px 60px -20px rgba(12, 32, 28, .35);
    color-scheme: light;
}

/* ---------- ۳. ریست ایزوله (در برابر استایل قالب) ---------- */
:is(#nam-portal, #nam-auth, #nam-track) {
    all: initial;
    display: block;
    box-sizing: border-box;
    direction: rtl;
    text-align: right;
    font-family: var(--nam-font);
    font-size: 14px;
    line-height: 1.7;
    color: var(--nam-text);
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}
:is(#nam-portal, #nam-auth, #nam-track) *, :is(#nam-portal, #nam-auth, #nam-track) *::before, :is(#nam-portal, #nam-auth, #nam-track) *::after { box-sizing: border-box; font-family: inherit; }
:is(#nam-portal, #nam-auth, #nam-track) :where(h1, h2, h3, h4, h5, h6, p, ul, ol, figure, table, blockquote) { margin: 0; padding: 0; }
:is(#nam-portal, #nam-auth, #nam-track) :where(h1, h2, h3, h4, h5, h6) { color: var(--nam-text-title); font-weight: 800; line-height: 1.4; text-wrap: balance; letter-spacing: 0; text-transform: none; }
:is(#nam-portal, #nam-auth, #nam-track) :where(button, input, select, textarea) {
    font: inherit; color: inherit; letter-spacing: normal; text-transform: none; text-shadow: none;
    box-shadow: none; margin: 0; min-height: 0; line-height: 1.5;
}
:is(#nam-portal, #nam-auth, #nam-track) :where(button) { background: none; border: 0; padding: 0; cursor: pointer; border-radius: 0; width: auto; height: auto; }
:is(#nam-portal, #nam-auth, #nam-track) :where(a) { color: var(--nam-primary); text-decoration: none; box-shadow: none; }
:is(#nam-portal, #nam-auth, #nam-track) :where(img, svg) { max-width: 100%; vertical-align: middle; }
:is(#nam-portal, #nam-auth, #nam-track) :where(svg) { flex-shrink: 0; }
:is(#nam-portal, #nam-auth, #nam-track) :where(code) { font-family: ui-monospace, 'SFMono-Regular', Menlo, Consolas, monospace; background: none; padding: 0; }
:is(#nam-portal, #nam-auth, #nam-track) :where(label) { margin: 0; padding: 0; font-weight: inherit; }
:is(#nam-portal, #nam-auth, #nam-track) :focus-visible { outline: 2px solid var(--nam-primary); outline-offset: 2px; border-radius: 8px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-num { font-variant-numeric: tabular-nums; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-muted { color: var(--nam-text-muted); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* ---------- ۴. پوسته اصلی ---------- */
#nam-portal {
    background: var(--nam-bg);
    border-radius: 22px;
    max-width: 1360px;
    width: 100%;
    margin: 20px auto;
    padding: 14px;
    border: 1px solid var(--nam-border);
}
#nam-portal .nam-shell {
    display: grid;
    grid-template-columns: 248px minmax(0, 1fr);
    gap: 14px;
    align-items: start;
}

/* سایدبار */
#nam-portal .nam-side {
    position: sticky;
    top: calc(14px + var(--sk-ab, 0px));
    background: var(--nam-card-bg);
    border: 1px solid var(--nam-border);
    border-radius: 18px;
    padding: 18px 14px 14px;
    display: flex;
    flex-direction: column;
    gap: 18px;
    min-height: calc(100vh - 60px);
    max-height: calc(100vh - 28px);
    overflow-y: auto;
}
#nam-portal .nam-brand { display: flex; align-items: center; gap: 10px; padding: 0 6px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-brand-mark {
    width: 40px; height: 40px; border-radius: 12px;
    background: var(--nam-primary-solid);
    color: #fff;
    display: grid; place-items: center;
    box-shadow: 0 8px 18px -8px var(--nam-primary);
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-brand-name { font-weight: 900; font-size: 15px; color: var(--nam-text-title); line-height: 1.3; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-brand-sub { font-size: 11.5px; color: var(--nam-text-muted); }

#nam-portal .nam-nav-group { display: flex; flex-direction: column; gap: 2px; }
#nam-portal .nam-nav-label { font-size: 11px; font-weight: 700; color: var(--nam-text-faint); padding: 0 12px 6px; letter-spacing: .02em; }
#nam-portal .nam-nav-btn {
    width: 100%;
    display: flex; align-items: center; gap: 11px;
    padding: 10px 12px;
    border-radius: 11px;
    font-size: 13.5px; font-weight: 600;
    color: var(--nam-text-muted);
    background: transparent;
    text-align: right;
    transition: background .15s, color .15s;
    position: relative;
}
#nam-portal .nam-nav-btn svg { width: 19px; height: 19px; }
#nam-portal .nam-nav-btn:hover { background: var(--nam-surface-2); color: var(--nam-text-title); }
#nam-portal .nam-nav-btn.active { background: var(--nam-primary-light); color: var(--nam-primary); font-weight: 800; }
#nam-portal .nam-nav-btn.active::before {
    content: ""; position: absolute; right: -14px; top: 9px; bottom: 9px; width: 4px;
    border-radius: 4px 0 0 4px; background: var(--nam-primary-solid);
}
#nam-portal .nam-nav-btn .nam-nav-tag {
    margin-right: auto; font-size: 10.5px; font-weight: 800; padding: 1px 8px; border-radius: 20px;
    background: var(--nam-surface-3); color: var(--nam-text-muted);
}
#nam-portal .nam-nav-btn.active .nam-nav-tag { background: var(--nam-primary-solid); color: #fff; }
#nam-portal .nam-nav-btn.is-danger { color: var(--nam-red); }
#nam-portal .nam-nav-btn.is-danger:hover { background: var(--nam-red-soft); }

#nam-portal .nam-side-promo {
    margin-top: auto;
    border-radius: 14px;
    padding: 14px;
    background: var(--nam-ink);
    color: #fff;
    position: relative;
    overflow: hidden;
}
#nam-portal .nam-side-promo::after {
    content: ""; position: absolute; inset: 0;
    background: radial-gradient(90% 70% at 90% 0%, rgba(95, 214, 180, .12), transparent 70%), linear-gradient(180deg, #1A433C, #1A2B29);
    z-index: 0; pointer-events: none;
}
#nam-portal .nam-side-promo > * { position: relative; z-index: 1; }
#nam-portal .nam-side-promo strong { display: block; font-size: 13.5px; font-weight: 800; color: #fff; }
#nam-portal .nam-side-promo span { display: block; font-size: 11.5px; color: rgba(255,255,255,.72); margin: 2px 0 10px; }
#nam-portal .nam-side-promo .nam-btn { position: relative; z-index: 1; }

#nam-portal .nam-side-user {
    display: flex; align-items: center; gap: 10px;
    padding: 10px; border-radius: 12px; background: var(--nam-surface-2);
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-avatar {
    width: 38px; height: 38px; border-radius: 50%;
    display: grid; place-items: center;
    font-weight: 800; font-size: 14px; color: #fff;
    background: linear-gradient(135deg, var(--nam-primary), var(--nam-violet));
    flex-shrink: 0;
}
#nam-portal .nam-side-user-name { font-size: 13px; font-weight: 800; color: var(--nam-text-title); line-height: 1.35; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
#nam-portal .nam-side-user-role { font-size: 11px; color: var(--nam-text-muted); }
#nam-portal .nam-side-user > div { min-width: 0; flex: 1; }
#nam-portal .nam-icon-btn {
    width: 36px; height: 36px; border-radius: 10px;
    display: inline-grid; place-items: center;
    color: var(--nam-text-muted);
    background: transparent;
    border: 1px solid transparent;
    transition: background .15s, color .15s, border-color .15s;
}
#nam-portal .nam-icon-btn:hover { background: var(--nam-card-bg); color: var(--nam-text-title); border-color: var(--nam-border); }
#nam-portal .nam-icon-btn svg { width: 18px; height: 18px; }

/* بخش اصلی */
#nam-portal .nam-main { min-width: 0; display: flex; flex-direction: column; gap: 14px; }
#nam-portal .nam-topbar {
    display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap;
    background: var(--nam-card-bg);
    border: 1px solid var(--nam-border);
    border-radius: 18px;
    padding: 12px 14px 12px 12px;
}
#nam-portal .nam-topbar-title h1 { font-size: 19px; font-weight: 900; }
#nam-portal .nam-topbar-title p { font-size: 12.5px; color: var(--nam-text-muted); }
#nam-portal .nam-topbar-actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
#nam-portal .nam-wallet-pill {
    display: inline-flex; align-items: center; gap: 10px;
    padding: 5px 5px 5px 14px;
    border-radius: 40px;
    background: var(--nam-surface-2);
    border: 1px solid var(--nam-border);
    font-size: 12.5px; color: var(--nam-text-muted);
}
#nam-portal .nam-wallet-pill .nam-wallet-ico {
    width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center;
    background: var(--nam-primary-solid); color: #fff;
}
#nam-portal .nam-wallet-pill .nam-wallet-ico svg { width: 15px; height: 15px; }
#nam-portal .nam-wallet-pill strong { color: var(--nam-text-title); font-weight: 800; font-size: 13.5px; }
#nam-portal .nam-role-chip {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 7px 12px; border-radius: 40px; font-size: 12px; font-weight: 800;
    background: var(--nam-ink); color: #fff; transition: transform .15s;
}
#nam-portal .nam-role-chip:hover { transform: translateY(-1px); }
#nam-portal .nam-role-chip svg { width: 14px; height: 14px; }
#nam-portal .nam-role-chip.is-agent { background: var(--nam-green-soft); color: var(--nam-green); }
#nam-portal .nam-mobile-head { display: none; }

/* ---------- ۵. کارت و چیدمان ---------- */
:is(#nam-portal, #nam-auth, #nam-track) .nam-card {
    background: var(--nam-card-bg);
    border: 1px solid var(--nam-border);
    border-radius: var(--nam-radius);
    padding: 20px;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-card + .nam-card { margin-top: 14px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-card-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 16px; flex-wrap: wrap; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-card-title { font-size: 15.5px; font-weight: 800; color: var(--nam-text-title); display: flex; align-items: center; gap: 10px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-card-sub { font-size: 12.5px; color: var(--nam-text-muted); margin-top: 2px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-step-num {
    width: 26px; height: 26px; border-radius: 8px; display: inline-grid; place-items: center;
    background: var(--nam-primary-light); color: var(--nam-primary); font-size: 12.5px; font-weight: 900;
}
#nam-portal .nam-tab-pane { animation: namFade .28s ease both; }
@keyframes namFade { from { opacity: .4; transform: translateY(4px); } to { opacity: 1; transform: none; } }

#nam-portal .nam-cols { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); gap: 14px; align-items: start; }
#nam-portal .nam-cols > * { min-width: 0; }
#nam-portal .nam-sticky { position: sticky; top: calc(14px + var(--sk-ab, 0px)); }
#nam-portal .nam-dash-grid { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: 14px; }
#nam-portal .nam-dash-grid > * { min-width: 0; }
#nam-portal .nam-dash-grid .nam-card + .nam-card { margin-top: 0; }

/* ---------- ۶. دکمه‌ها ---------- */
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn, :is(#nam-portal, #nam-auth, #nam-track) .nam-btn-primary-action {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    padding: 11px 18px;
    border-radius: 12px;
    font-size: 13.5px; font-weight: 800;
    background: var(--nam-primary-solid); color: var(--nam-on-solid);
    border: 1px solid transparent;
    cursor: pointer;
    transition: background .15s, transform .15s, box-shadow .15s, color .15s, border-color .15s;
    white-space: nowrap;
    text-decoration: none;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn:hover, :is(#nam-portal, #nam-auth, #nam-track) .nam-btn-primary-action:hover { background: var(--nam-primary-solid-hover); color: var(--nam-on-solid); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn:active { transform: translateY(1px); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn[disabled], :is(#nam-portal, #nam-auth, #nam-track) .nam-btn-primary-action[disabled] { opacity: .6; cursor: progress; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn svg { width: 17px; height: 17px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn-primary-action { width: 100%; padding: 14px 18px; font-size: 14.5px; box-shadow: 0 12px 24px -12px var(--nam-primary); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn--block { width: 100%; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn--sm { padding: 7px 12px; font-size: 12px; border-radius: 10px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn--sm svg { width: 15px; height: 15px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn--ghost { background: var(--nam-card-bg); color: var(--nam-text-title); border-color: var(--nam-border); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn--ghost:hover { background: var(--nam-surface-2); color: var(--nam-text-title); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn--soft { background: var(--nam-primary-light); color: var(--nam-primary); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn--soft:hover { background: var(--nam-primary-solid); color: #fff; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn--light { background: #fff; color: #0F2420; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn--light:hover { background: #E9EEFF; color: #0F2420; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn--warn { background: var(--nam-orange); color: #fff; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn--warn:hover { background: var(--nam-orange); filter: brightness(.95); color: #fff; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn-add-funds {
    display: inline-flex; align-items: center; justify-content: center; gap: 6px;
    padding: 6px 12px; border-radius: 30px;
    font-size: 12px; font-weight: 800;
    background: var(--nam-primary-solid); color: #fff;
    cursor: pointer; transition: background .15s;
    white-space: nowrap;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn-add-funds:hover { background: var(--nam-primary-solid-hover); color: #fff; }

/* ---------- ۷. فرم ---------- */
:is(#nam-portal, #nam-auth, #nam-track) .nam-field { display: flex; flex-direction: column; gap: 7px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-field + .nam-field { margin-top: 14px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-field-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-field-row + .nam-field, :is(#nam-portal, #nam-auth, #nam-track) .nam-field + .nam-field-row { margin-top: 14px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-label { font-size: 12.5px; font-weight: 700; color: var(--nam-text-title); display: flex; justify-content: space-between; align-items: center; gap: 8px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-label small { font-weight: 500; color: var(--nam-text-muted); font-size: 11.5px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-input-text, :is(#nam-portal, #nam-auth, #nam-track) .nam-select-box, :is(#nam-portal, #nam-auth, #nam-track) .nam-auth-input {
    width: 100%;
    padding: 11px 14px;
    font-size: 13.5px;
    border: 1px solid var(--nam-border-input);
    border-radius: 12px;
    background: var(--nam-card-bg);
    color: var(--nam-text-title);
    outline: none;
    transition: border-color .15s, box-shadow .15s, background .15s;
    -webkit-appearance: none; appearance: none;
}
:is(#nam-portal, #nam-auth, #nam-track) textarea.nam-input-text { resize: vertical; min-height: 120px; line-height: 1.9; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-select-box {
    padding-left: 38px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238C95A9' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: left 14px center;
    cursor: pointer;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-input-text::placeholder, :is(#nam-portal, #nam-auth, #nam-track) .nam-auth-input::placeholder { color: var(--nam-text-faint); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-input-text:hover, :is(#nam-portal, #nam-auth, #nam-track) .nam-select-box:hover, :is(#nam-portal, #nam-auth, #nam-track) .nam-auth-input:hover { border-color: var(--nam-text-faint); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-input-text:focus, :is(#nam-portal, #nam-auth, #nam-track) .nam-select-box:focus, :is(#nam-portal, #nam-auth, #nam-track) .nam-auth-input:focus {
    border-color: var(--nam-primary); box-shadow: 0 0 0 4px var(--nam-primary-ring);
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-input-text[readonly] { background: var(--nam-surface-2); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-ltr { direction: ltr; text-align: left; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-hint { font-size: 11.5px; color: var(--nam-text-muted); }

/* دراپ‌زون آپلود */
:is(#nam-portal, #nam-auth, #nam-track) .nam-drop {
    display: flex; align-items: center; gap: 12px;
    border: 1.5px dashed var(--nam-border-input);
    border-radius: 14px;
    padding: 14px;
    background: var(--nam-surface-2);
    cursor: pointer;
    transition: border-color .15s, background .15s;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-drop:hover, :is(#nam-portal, #nam-auth, #nam-track) .nam-drop.is-over { border-color: var(--nam-primary); background: var(--nam-primary-light); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-drop input[type=file] { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-drop-ico { width: 42px; height: 42px; border-radius: 12px; display: grid; place-items: center; background: var(--nam-card-bg); color: var(--nam-primary); border: 1px solid var(--nam-border); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-drop-ico svg { width: 20px; height: 20px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-drop strong { display: block; font-size: 13px; color: var(--nam-text-title); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-drop span { display: block; font-size: 11.5px; color: var(--nam-text-muted); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-drop.is-done { border-style: solid; border-color: var(--nam-green); background: var(--nam-green-soft); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-drop.is-done .nam-drop-ico { color: var(--nam-green); }

/* هشدارها */
:is(#nam-portal, #nam-auth, #nam-track) .nam-alert {
    display: flex; gap: 10px; align-items: flex-start;
    padding: 11px 14px; border-radius: 12px; font-size: 12.5px; line-height: 1.8;
    background: var(--nam-primary-light); color: var(--nam-text);
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-alert svg { width: 18px; height: 18px; color: var(--nam-primary); margin-top: 2px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-alert strong { color: var(--nam-text-title); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-alert--warn { background: var(--nam-orange-soft); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-alert--warn svg { color: var(--nam-orange); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-alert--danger { background: var(--nam-red-soft); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-alert--danger svg { color: var(--nam-red); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-alert--success { background: var(--nam-green-soft); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-alert--success svg { color: var(--nam-green); }

/* ---------- ۸. گام‌ها و انتخاب رسانه ---------- */
#nam-portal .nam-steps {
    display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px;
    background: var(--nam-card-bg); border: 1px solid var(--nam-border); border-radius: 16px; padding: 6px;
    counter-reset: namstep;
}
#nam-portal .nam-step {
    display: flex; align-items: center; gap: 10px; padding: 9px 12px; border-radius: 11px;
    font-size: 12.5px; font-weight: 700; color: var(--nam-text-muted);
    transition: background .2s, color .2s;
}
#nam-portal .nam-step i {
    font-style: normal; width: 24px; height: 24px; border-radius: 50%;
    display: grid; place-items: center; font-size: 11.5px; font-weight: 900;
    border: 1.5px solid var(--nam-border-input); color: var(--nam-text-muted);
    flex-shrink: 0; transition: all .2s;
}
#nam-portal .nam-step small { display: block; font-weight: 500; font-size: 11px; color: var(--nam-text-faint); }
#nam-portal .nam-step.is-done i { background: var(--nam-green); border-color: var(--nam-green); color: #fff; }
#nam-portal .nam-step.is-current { background: var(--nam-primary-light); color: var(--nam-primary); }
#nam-portal .nam-step.is-current i { background: var(--nam-primary-solid); border-color: var(--nam-primary); color: #fff; }

#nam-portal .nam-top-media-nav { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
#nam-portal .nam-media-pill-btn {
    display: flex; align-items: center; gap: 12px;
    padding: 14px;
    border-radius: 16px;
    border: 1.5px solid var(--nam-border);
    background: var(--nam-card-bg);
    text-align: right;
    transition: border-color .18s, box-shadow .18s, transform .18s;
    position: relative;
}
#nam-portal .nam-media-pill-btn:hover { border-color: var(--nam-primary); transform: translateY(-1px); }
#nam-portal .nam-media-ico {
    width: 44px; height: 44px; border-radius: 13px; display: grid; place-items: center;
    background: var(--nam-surface-3); color: var(--nam-text-muted); transition: all .18s;
}
#nam-portal .nam-media-ico svg { width: 22px; height: 22px; }
#nam-portal .nam-media-pill-btn strong { display: block; font-size: 13.5px; font-weight: 800; color: var(--nam-text-title); line-height: 1.4; }
#nam-portal .nam-media-pill-btn span.nam-media-sub { display: block; font-size: 11.5px; color: var(--nam-text-muted); line-height: 1.5; }
#nam-portal .nam-media-pill-btn.active { border-color: var(--nam-primary); box-shadow: 0 0 0 4px var(--nam-primary-ring); }
#nam-portal .nam-media-pill-btn.active .nam-media-ico { background: var(--nam-primary-solid); color: #fff; }
#nam-portal .nam-media-pill-btn .nam-media-check {
    position: absolute; top: 10px; left: 10px; width: 20px; height: 20px; border-radius: 50%;
    border: 1.5px solid var(--nam-border-input); display: grid; place-items: center; color: transparent;
}
#nam-portal .nam-media-pill-btn.active .nam-media-check { background: var(--nam-primary-solid); border-color: var(--nam-primary); color: #fff; }
#nam-portal .nam-media-check svg { width: 12px; height: 12px; }

/* شمارنده کادر */
:is(#nam-portal, #nam-auth, #nam-track) .nam-counter-bar {
    display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap;
    padding: 12px 14px; border-radius: 14px; background: var(--nam-surface-2); border: 1px solid var(--nam-border);
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-counter-bar strong { font-size: 13px; color: var(--nam-text-title); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-counter-bar small { display: block; font-size: 11.5px; color: var(--nam-text-muted); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-stepper { display: inline-flex; align-items: center; background: var(--nam-card-bg); border: 1px solid var(--nam-border); border-radius: 12px; padding: 4px; gap: 2px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-stepper button {
    width: 34px; height: 34px; border-radius: 9px; display: grid; place-items: center;
    color: var(--nam-text-title); font-size: 18px; font-weight: 700; transition: background .15s;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-stepper button:hover { background: var(--nam-primary-light); color: var(--nam-primary); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-stepper input {
    width: 52px; text-align: center; font-weight: 900; font-size: 16px; color: var(--nam-text-title);
    border: 0; background: transparent; outline: none; padding: 0;
}

/* شمارنده کلمات */
:is(#nam-portal, #nam-auth, #nam-track) .nam-words { display: flex; align-items: center; gap: 10px; margin-top: 8px; font-size: 11.5px; color: var(--nam-text-muted); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-words-track { flex: 1; height: 6px; border-radius: 6px; background: var(--nam-surface-3); overflow: hidden; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-words-fill { height: 100%; width: 0; border-radius: 6px; background: var(--nam-primary-solid); transition: width .25s, background .25s; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-words-badge { font-weight: 800; color: var(--nam-primary); white-space: nowrap; }

/* ---------- ۹. ماکت روزنامه ---------- */
:is(#nam-portal, #nam-auth, #nam-track) .nam-newspaper-mockup-page {
    background: var(--nam-np-paper);
    border: 1px solid var(--nam-border);
    border-radius: 14px;
    padding: 14px 14px 12px;
    box-shadow: var(--nam-shadow);
    position: relative;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-np-masthead { text-align: center; padding-bottom: 8px; border-bottom: 2.5px solid var(--nam-np-rule); margin-bottom: 4px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-np-masthead b { display: block; font-size: 20px; font-weight: 900; letter-spacing: -.01em; color: var(--nam-text-title); line-height: 1.3; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-np-meta {
    display: flex; justify-content: space-between; font-size: 10px; color: var(--nam-text-muted);
    border-bottom: 1px solid var(--nam-np-rule); padding: 3px 0; margin-bottom: 10px; font-weight: 600;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-np-headline { display: grid; grid-template-columns: 1.6fr 1fr; gap: 8px; margin-bottom: 8px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-np-lines { display: flex; flex-direction: column; gap: 4px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-np-lines i { display: block; height: 4px; border-radius: 2px; background: var(--nam-surface-3); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-np-lines i.is-head { height: 9px; background: var(--nam-text-faint); opacity: .55; width: 85%; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-np-photo { border-radius: 4px; background: repeating-linear-gradient(135deg, var(--nam-surface-3) 0 6px, var(--nam-surface-2) 6px 12px); min-height: 46px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-np-grid-24 {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-template-rows: repeat(6, 40px);
    gap: 5px;
    background: var(--nam-np-grid-bg);
    padding: 5px;
    border-radius: 8px;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-grid-cell {
    background: var(--nam-card-bg);
    border: 1.5px dashed var(--nam-border-input);
    border-radius: 6px;
    display: flex; align-items: center; justify-content: center;
    font-size: 11.5px; font-weight: 800; color: var(--nam-text-faint);
    cursor: pointer; user-select: none;
    transition: transform .16s, background .16s, border-color .16s, color .16s;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-grid-cell:hover:not(.page1-locked):not(.occupied-ad) { border-color: var(--nam-primary); color: var(--nam-primary); background: var(--nam-primary-light); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-grid-cell.occupied-ad {
    background: linear-gradient(160deg, var(--nam-primary), var(--nam-violet));
    border: 1.5px solid transparent;
    color: #fff; font-weight: 900;
    box-shadow: 0 6px 14px -8px var(--nam-primary);
    animation: namPop .22s ease;
}
@keyframes namPop { from { transform: scale(.88); } to { transform: none; } }
:is(#nam-portal, #nam-auth, #nam-track) .nam-grid-cell.page1-locked {
    background: repeating-linear-gradient(135deg, var(--nam-surface-3) 0 5px, transparent 5px 10px);
    border: 1px solid var(--nam-border);
    color: var(--nam-text-muted); cursor: not-allowed; font-size: 10.5px; font-weight: 700;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-legend { display: flex; gap: 14px; flex-wrap: wrap; font-size: 11.5px; color: var(--nam-text-muted); margin-top: 12px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-legend span { display: inline-flex; align-items: center; gap: 6px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-legend i { width: 12px; height: 12px; border-radius: 4px; display: inline-block; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-legend .is-sel { background: linear-gradient(160deg, var(--nam-primary), var(--nam-violet)); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-legend .is-free { border: 1.5px dashed var(--nam-border-input); background: var(--nam-card-bg); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-legend .is-lock { background: repeating-linear-gradient(135deg, var(--nam-text-faint) 0 2px, transparent 2px 4px); }

/* افزودنی‌ها */
:is(#nam-portal, #nam-auth, #nam-track) .nam-addon {
    display: flex; align-items: center; gap: 12px;
    padding: 12px 14px; border-radius: 14px;
    border: 1.5px solid var(--nam-border);
    cursor: pointer; transition: border-color .15s, background .15s;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-addon + .nam-addon { margin-top: 8px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-addon:hover { border-color: var(--nam-text-faint); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-addon input { position: absolute; opacity: 0; width: 1px; height: 1px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-addon .nam-check {
    width: 22px; height: 22px; border-radius: 7px; border: 1.5px solid var(--nam-border-input);
    display: grid; place-items: center; color: transparent; flex-shrink: 0; transition: all .15s;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-addon .nam-check svg { width: 13px; height: 13px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-addon:has(input:checked) { border-color: var(--nam-primary); background: var(--nam-primary-light); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-addon:has(input:checked) .nam-check { background: var(--nam-primary-solid); border-color: var(--nam-primary); color: #fff; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-addon:has(input:focus-visible) { box-shadow: 0 0 0 4px var(--nam-primary-ring); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-addon-body { flex: 1; min-width: 0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-addon-body strong { display: block; font-size: 13px; color: var(--nam-text-title); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-addon-body span { display: block; font-size: 11.5px; color: var(--nam-text-muted); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-addon-price { font-size: 12.5px; font-weight: 800; color: var(--nam-primary); white-space: nowrap; }

/* خلاصه فاکتور */
:is(#nam-portal, #nam-auth, #nam-track) .nam-summary { display: flex; flex-direction: column; gap: 9px; font-size: 13px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-summary-row { display: flex; justify-content: space-between; align-items: center; gap: 10px; color: var(--nam-text-muted); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-summary-row b { color: var(--nam-text-title); font-weight: 700; font-variant-numeric: tabular-nums; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-summary-row.is-discount b { color: var(--nam-green); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-summary-total {
    display: flex; justify-content: space-between; align-items: flex-end; gap: 10px;
    border-top: 1.5px dashed var(--nam-border-input); padding-top: 12px; margin-top: 4px;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-summary-total span { font-size: 12.5px; color: var(--nam-text-muted); font-weight: 700; }
:is(#nam-portal, #nam-auth, #nam-track) #nam-calc-total-txt { font-size: 22px; font-weight: 900; color: var(--nam-text-title); line-height: 1.3; font-variant-numeric: tabular-nums; }
:is(#nam-portal, #nam-auth, #nam-track) #nam-calc-total-txt.is-waiting { font-size: 13px; font-weight: 700; color: var(--nam-text-faint); }

/* روش‌های پرداخت */
:is(#nam-portal, #nam-auth, #nam-track) .nam-pay-list { display: grid; gap: 8px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pay-opt {
    display: flex; align-items: center; gap: 12px; padding: 12px; border-radius: 14px;
    border: 1.5px solid var(--nam-border); cursor: pointer; transition: border-color .15s, background .15s;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-pay-opt:hover { border-color: var(--nam-text-faint); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pay-opt input { position: absolute; opacity: 0; width: 1px; height: 1px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pay-opt .nam-radio { width: 20px; height: 20px; border-radius: 50%; border: 1.5px solid var(--nam-border-input); flex-shrink: 0; position: relative; transition: all .15s; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pay-opt:has(input:checked) { border-color: var(--nam-primary); background: var(--nam-primary-light); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pay-opt:has(input:checked) .nam-radio { border-color: var(--nam-primary); border-width: 6px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pay-opt:has(input:focus-visible) { box-shadow: 0 0 0 4px var(--nam-primary-ring); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pay-ico { width: 36px; height: 36px; border-radius: 10px; display: grid; place-items: center; background: var(--nam-surface-3); color: var(--nam-text-title); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pay-ico svg { width: 18px; height: 18px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pay-opt strong { display: block; font-size: 13px; color: var(--nam-text-title); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pay-opt span { display: block; font-size: 11.5px; color: var(--nam-text-muted); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pay-opt > div { flex: 1; min-width: 0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pay-opt .nam-pay-warn { color: var(--nam-red); font-weight: 700; }

:is(#nam-portal, #nam-auth, #nam-track) .nam-bank-box { border-radius: 14px; padding: 14px; background: var(--nam-surface-2); border: 1px solid var(--nam-border); display: grid; gap: 10px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-copy-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-copy-row > div { min-width: 0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-copy-row small { display: block; font-size: 11px; color: var(--nam-text-muted); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-copy-row code { display: block; font-size: 14px; font-weight: 800; color: var(--nam-text-title); direction: ltr; text-align: right; letter-spacing: .04em; overflow-wrap: anywhere; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-copy-btn { font-size: 11.5px; font-weight: 800; color: var(--nam-primary); padding: 6px 10px; border-radius: 8px; background: var(--nam-primary-light); }

/* ---------- ۱۰. داشبورد ---------- */
:is(#nam-portal, #nam-auth, #nam-track) .nam-kpis { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-kpi {
    background: var(--nam-card-bg); border: 1px solid var(--nam-border); border-radius: var(--nam-radius);
    padding: 16px; display: flex; flex-direction: column; gap: 6px; min-width: 0;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-kpi-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-kpi-label { font-size: 12.5px; color: var(--nam-text-muted); font-weight: 700; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-kpi-ico { width: 34px; height: 34px; border-radius: 10px; display: grid; place-items: center; background: var(--nam-primary-light); color: var(--nam-primary); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-kpi-ico svg { width: 17px; height: 17px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-kpi-ico.is-green { background: var(--nam-green-soft); color: var(--nam-green); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-kpi-ico.is-orange { background: var(--nam-orange-soft); color: var(--nam-orange); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-kpi-ico.is-violet { background: var(--nam-violet-soft); color: var(--nam-violet); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-kpi-ico.is-red { background: var(--nam-red-soft); color: var(--nam-red); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-kpi-value { font-size: 24px; font-weight: 900; color: var(--nam-text-title); line-height: 1.25; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-kpi-foot { font-size: 11.5px; color: var(--nam-text-muted); display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-delta { font-weight: 800; padding: 1px 7px; border-radius: 20px; font-size: 11px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-delta.is-up { background: var(--nam-green-soft); color: var(--nam-green); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-delta.is-down { background: var(--nam-red-soft); color: var(--nam-red); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-kpi.is-featured { background: var(--nam-primary-solid); border-color: var(--nam-primary-solid); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-kpi.is-featured .nam-kpi-label, :is(#nam-portal, #nam-auth, #nam-track) .nam-kpi.is-featured .nam-kpi-foot { color: rgba(255,255,255,.78); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-kpi.is-featured .nam-kpi-value { color: #fff; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-kpi.is-featured .nam-kpi-ico { background: rgba(255,255,255,.18); color: #fff; }

:is(#nam-portal, #nam-auth, #nam-track) .nam-seg { display: inline-flex; background: var(--nam-surface-2); border: 1px solid var(--nam-border); border-radius: 12px; padding: 3px; gap: 2px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-filter-pill-btn, :is(#nam-portal, #nam-auth, #nam-track) .nam-seg button {
    padding: 6px 13px; border-radius: 9px; font-size: 12px; font-weight: 700; color: var(--nam-text-muted);
    background: transparent; border: 0; cursor: pointer; transition: all .15s; white-space: nowrap;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-filter-pill-btn:hover, :is(#nam-portal, #nam-auth, #nam-track) .nam-seg button:hover { color: var(--nam-text-title); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-filter-pill-btn.active, :is(#nam-portal, #nam-auth, #nam-track) .nam-seg button.active { background: var(--nam-card-bg); color: var(--nam-text-title); box-shadow: var(--nam-shadow-sm); }

:is(#nam-portal, #nam-auth, #nam-track) .nam-chart-box { position: relative; height: 290px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-donut-box { position: relative; height: 190px; margin: 4px auto 10px; max-width: 220px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-donut-center { position: absolute; inset: 0; display: grid; place-items: center; text-align: center; pointer-events: none; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-donut-center b { display: block; font-size: 22px; font-weight: 900; color: var(--nam-text-title); line-height: 1.2; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-donut-center span { font-size: 11px; color: var(--nam-text-muted); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-chart-legend { display: flex; gap: 14px; flex-wrap: wrap; font-size: 12px; color: var(--nam-text-muted); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-chart-legend span { display: inline-flex; align-items: center; gap: 6px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-chart-legend i { width: 10px; height: 10px; border-radius: 3px; display: inline-block; }

:is(#nam-portal, #nam-auth, #nam-track) .nam-share-list { display: grid; gap: 10px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-share-row { display: grid; grid-template-columns: 1fr auto; gap: 4px 10px; align-items: center; font-size: 12.5px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-share-row span { color: var(--nam-text); display: inline-flex; align-items: center; gap: 7px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-share-row b { color: var(--nam-text-title); font-variant-numeric: tabular-nums; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-bar { grid-column: 1 / -1; height: 6px; border-radius: 6px; background: var(--nam-surface-3); overflow: hidden; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-bar > i { display: block; height: 100%; border-radius: 6px; background: var(--nam-primary); }

/* ---------- ۱۱. جدول و ردیف سفارش ---------- */
:is(#nam-portal, #nam-auth, #nam-track) .nam-table-wrap { overflow-x: auto; margin: 0 -4px; padding: 0 4px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-table, :is(#nam-portal, #nam-auth, #nam-track) .nam-table-clean { width: 100%; border-collapse: collapse; font-size: 13px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-table th, :is(#nam-portal, #nam-auth, #nam-track) .nam-table-clean th {
    text-align: right; font-size: 11.5px; font-weight: 700; color: var(--nam-text-muted);
    padding: 10px 12px; border-bottom: 1px solid var(--nam-border); white-space: nowrap; background: transparent;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-table td, :is(#nam-portal, #nam-auth, #nam-track) .nam-table-clean td { padding: 12px; border-bottom: 1px solid var(--nam-border); color: var(--nam-text); vertical-align: middle; background: transparent; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-table tbody tr, :is(#nam-portal, #nam-auth, #nam-track) .nam-table-clean tbody tr { transition: background .12s; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-table tbody tr:hover td { background: var(--nam-surface-2); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-table tbody tr:last-child td, :is(#nam-portal, #nam-auth, #nam-track) .nam-table-clean tbody tr:last-child td { border-bottom: 0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-table .is-click { cursor: pointer; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-cell-main { display: flex; align-items: center; gap: 10px; min-width: 0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-cell-main strong { display: block; font-size: 13px; color: var(--nam-text-title); font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 260px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-cell-main small { display: block; font-size: 11.5px; color: var(--nam-text-muted); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-media-dot { width: 34px; height: 34px; border-radius: 10px; display: grid; place-items: center; flex-shrink: 0; background: var(--nam-primary-light); color: var(--nam-primary); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-media-dot svg { width: 17px; height: 17px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-media-dot.is-web { background: var(--nam-green-soft); color: var(--nam-green); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-media-dot.is-channel { background: var(--nam-orange-soft); color: var(--nam-orange); }

:is(#nam-portal, #nam-auth, #nam-track) .nam-pill {
    display: inline-flex; align-items: center; gap: 6px; padding: 3px 10px; border-radius: 30px;
    font-size: 11.5px; font-weight: 800; white-space: nowrap; background: var(--nam-surface-3); color: var(--nam-text-muted);
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-pill::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pill--pending_review { background: var(--nam-orange-soft); color: var(--nam-orange); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pill--mockup_approved { background: var(--nam-primary-light); color: var(--nam-primary); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pill--sent_to_press { background: var(--nam-violet-soft); color: var(--nam-violet); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pill--published, :is(#nam-portal, #nam-auth, #nam-track) .nam-pill--ok { background: var(--nam-green-soft); color: var(--nam-green); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pill--rejected, :is(#nam-portal, #nam-auth, #nam-track) .nam-pill--debt { background: var(--nam-red-soft); color: var(--nam-red); }

:is(#nam-portal, #nam-auth, #nam-track) .nam-order-list { display: grid; gap: 10px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-order-item-card {
    display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr) auto auto; gap: 14px; align-items: center;
    padding: 14px; border-radius: 14px; border: 1px solid var(--nam-border); background: var(--nam-card-bg);
    cursor: pointer; transition: border-color .15s, box-shadow .15s, transform .15s;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-order-item-card:hover { border-color: var(--nam-primary); box-shadow: var(--nam-shadow); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-order-meta { font-size: 12px; color: var(--nam-text-muted); min-width: 0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-order-meta b { display: block; color: var(--nam-text-title); font-weight: 700; font-size: 12.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-order-price { font-weight: 900; color: var(--nam-text-title); font-size: 14px; white-space: nowrap; font-variant-numeric: tabular-nums; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-order-price small { font-weight: 600; font-size: 11px; color: var(--nam-text-muted); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-order-actions { display: flex; gap: 8px; align-items: center; justify-content: flex-end; flex-wrap: wrap; }

:is(#nam-portal, #nam-auth, #nam-track) .nam-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; margin-bottom: 14px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-search { position: relative; min-width: 220px; flex: 1; max-width: 320px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-search svg { position: absolute; right: 12px; top: 50%; transform: translateY(-50%); width: 16px; height: 16px; color: var(--nam-text-faint); pointer-events: none; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-search .nam-input-text { padding-right: 38px; }

:is(#nam-portal, #nam-auth, #nam-track) .nam-empty { text-align: center; padding: 36px 16px; color: var(--nam-text-muted); font-size: 13px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-empty-ico { width: 56px; height: 56px; border-radius: 16px; display: grid; place-items: center; margin: 0 auto 12px; background: var(--nam-surface-3); color: var(--nam-text-faint); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-empty-ico svg { width: 26px; height: 26px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-empty strong { display: block; color: var(--nam-text-title); font-size: 14px; margin-bottom: 4px; }

/* ---------- ۱۲. کیف پول ---------- */
#nam-portal .nam-wallet-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 14px; align-items: start; }
#nam-portal .nam-wallet-grid > * { min-width: 0; }
#nam-portal .nam-wallet-grid .nam-card + .nam-card { margin-top: 14px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-bank-card {
    --bc1: #2C7A68; --bc2: #1A433C; --bc3: #12302B;
    position: relative;
    border-radius: 22px;
    overflow: hidden;
    color: #fff;
    background: #1A433C;
    box-shadow: 0 26px 50px -24px rgba(0, 0, 0, .55);
    aspect-ratio: 1.62 / 1;
    max-width: 440px;
    width: 100%;
    display: flex; flex-direction: column;
    isolation: isolate;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-bank-card::before {
    content: ""; position: absolute; inset: 0; z-index: -1;
    background:
        repeating-linear-gradient(45deg, rgba(255,255,255,.09) 0 22px, transparent 22px 64px),
        repeating-linear-gradient(-45deg, rgba(255,255,255,.07) 0 22px, transparent 22px 64px),
        radial-gradient(120% 90% at 0% 0%, var(--bc1) 0%, var(--bc2) 45%, var(--bc3) 100%);
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-bank-card-top { flex: 1; padding: 20px 22px 14px; display: flex; flex-direction: column; justify-content: space-between; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-bank-card-row { display: flex; justify-content: space-between; align-items: center; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-bank-card-brand { font-size: 13px; font-weight: 900; letter-spacing: .02em; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-bank-card-dots { display: inline-flex; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-bank-card-dots i { width: 20px; height: 20px; border-radius: 50%; background: rgba(255,255,255,.85); display: inline-block; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-bank-card-dots i + i { margin-right: -8px; background: rgba(255,255,255,.5); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-bank-card-label { font-size: 12px; color: rgba(255,255,255,.8); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-bank-card-balance { font-size: clamp(24px, 4.2vw, 34px); font-weight: 900; line-height: 1.2; font-variant-numeric: tabular-nums; color: #fff; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-bank-card-balance small { font-size: 14px; font-weight: 700; opacity: .85; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-bank-card-nfc { width: 26px; height: 26px; opacity: .9; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-bank-card-foot {
    background: #10231F; padding: 13px 22px; display: flex; justify-content: space-between; align-items: center; gap: 10px;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-bank-card-foot span { font-size: 11px; color: rgba(255,255,255,.6); display: block; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-bank-card-foot b { font-size: 13.5px; font-weight: 800; color: #fff; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-bank-card-foot code { direction: ltr; font-size: 14px; letter-spacing: .14em; color: #fff; font-weight: 700; }

:is(#nam-portal, #nam-auth, #nam-track) .nam-chips { display: flex; gap: 8px; flex-wrap: wrap; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-chip {
    padding: 8px 14px; border-radius: 11px; border: 1.5px solid var(--nam-border); font-size: 12.5px; font-weight: 800;
    color: var(--nam-text-title); background: var(--nam-card-bg); transition: all .15s; font-variant-numeric: tabular-nums;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-chip:hover { border-color: var(--nam-primary); color: var(--nam-primary); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-chip.active { border-color: var(--nam-primary); background: var(--nam-primary-light); color: var(--nam-primary); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-amount-field { position: relative; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-amount-field .nam-input-text { font-size: 18px; font-weight: 800; padding-left: 64px; font-variant-numeric: tabular-nums; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-amount-field em { position: absolute; left: 14px; top: 50%; transform: translateY(-50%); font-style: normal; font-size: 12px; font-weight: 700; color: var(--nam-text-muted); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-amount-words { font-size: 11.5px; color: var(--nam-text-muted); margin-top: 6px; min-height: 18px; }

:is(#nam-portal, #nam-auth, #nam-track) .nam-tx-list { display: grid; grid-template-columns: minmax(0, 1fr); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-card, :is(#nam-portal, #nam-auth, #nam-track) .nam-card-body { min-width: 0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tx-body small { display: block; overflow-wrap: anywhere; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tx { display: flex; align-items: center; gap: 12px; padding: 12px 2px; border-bottom: 1px solid var(--nam-border); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tx:last-child { border-bottom: 0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tx-ico { width: 38px; height: 38px; border-radius: 12px; display: grid; place-items: center; flex-shrink: 0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tx-ico svg { width: 17px; height: 17px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tx.is-credit .nam-tx-ico { background: var(--nam-green-soft); color: var(--nam-green); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tx.is-debit .nam-tx-ico { background: var(--nam-red-soft); color: var(--nam-red); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tx-body { flex: 1; min-width: 0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tx-body strong { display: block; font-size: 13px; color: var(--nam-text-title); font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tx-body small { font-size: 11.5px; color: var(--nam-text-muted); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tx-amt { font-weight: 800; font-size: 13.5px; white-space: nowrap; font-variant-numeric: tabular-nums; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tx.is-credit .nam-tx-amt { color: var(--nam-green); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tx.is-debit .nam-tx-amt { color: var(--nam-text-title); }

/* ---------- ۱۳. بازاریابی و نماینده ---------- */
#nam-portal .nam-hero-band {
    border-radius: 18px; padding: 22px; color: #fff; position: relative; overflow: hidden;
    background: var(--nam-ink);
    display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 18px; align-items: center;
}
#nam-portal .nam-hero-band::after {
    content: ""; position: absolute; inset: 0; pointer-events: none;
    background:
        radial-gradient(60% 120% at 0% 100%, rgba(26, 67, 60, .55), transparent 60%),
        repeating-linear-gradient(45deg, rgba(255,255,255,.04) 0 14px, transparent 14px 40px);
}
#nam-portal .nam-hero-band > * { position: relative; z-index: 1; }
#nam-portal .nam-hero-band h2 { color: #fff; font-size: 20px; font-weight: 900; }
#nam-portal .nam-hero-band p { color: rgba(255,255,255,.75); font-size: 13px; margin-top: 6px; max-width: 52ch; }
#nam-portal .nam-hero-stats { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
#nam-portal .nam-hero-stat { background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.12); border-radius: 14px; padding: 12px 14px; }
#nam-portal .nam-hero-stat span { display: block; font-size: 11.5px; color: rgba(255,255,255,.65); }
#nam-portal .nam-hero-stat b { display: block; font-size: 20px; font-weight: 900; color: #fff; font-variant-numeric: tabular-nums; }
#nam-portal .nam-howto { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
#nam-portal .nam-howto div { padding: 14px; border-radius: 14px; background: var(--nam-surface-2); border: 1px solid var(--nam-border); }
#nam-portal .nam-howto i { font-style: normal; width: 28px; height: 28px; border-radius: 9px; display: grid; place-items: center; background: var(--nam-primary-solid); color: #fff; font-weight: 900; font-size: 13px; margin-bottom: 8px; }
#nam-portal .nam-howto strong { display: block; font-size: 13px; color: var(--nam-text-title); }
#nam-portal .nam-howto span { display: block; font-size: 12px; color: var(--nam-text-muted); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-link-field { display: flex; gap: 8px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-link-field .nam-input-text { direction: ltr; text-align: left; font-size: 13px; }

:is(#nam-portal, #nam-auth, #nam-track) .nam-credit-meter { margin-top: 4px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-credit-meter .nam-bar { height: 8px; margin-top: 6px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-credit-meter .nam-bar > i { background: var(--nam-green); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-credit-meter .nam-bar > i.is-high { background: var(--nam-orange); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-credit-meter .nam-bar > i.is-full { background: var(--nam-red); }

/* میز مدیریت */
:is(#nam-portal, #nam-auth, #nam-track) .nam-admin-row {
    padding: 14px; border-radius: 14px; border: 1px solid var(--nam-border); background: var(--nam-card-bg);
    display: grid; gap: 12px;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-admin-row + .nam-admin-row { margin-top: 10px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-admin-row-head { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-admin-row-head strong { color: var(--nam-text-title); font-size: 13.5px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-admin-controls {
    display: grid; grid-template-columns: 180px minmax(0, 1fr) auto auto auto; gap: 8px; align-items: center;
    background: var(--nam-surface-2); border-radius: 12px; padding: 8px;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-admin-controls .nam-select-box, :is(#nam-portal, #nam-auth, #nam-track) .nam-admin-controls .nam-input-text { padding-top: 8px; padding-bottom: 8px; font-size: 12.5px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-upload-btn { position: relative; overflow: hidden; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-upload-btn input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }

/* گزارش نماینده (پاسخ AJAX) */
:is(#nam-portal, #nam-auth, #nam-track) .nam-report { margin-top: 14px; border: 1px solid var(--nam-border); border-radius: 14px; padding: 16px; background: var(--nam-surface-2); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-report-head { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 14px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-report-head h4 { font-size: 14.5px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-report .nam-kpis { grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; margin-bottom: 14px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-report .nam-kpi { padding: 12px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-report .nam-kpi-value { font-size: 17px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-report .nam-table-wrap { background: var(--nam-card-bg); border: 1px solid var(--nam-border); border-radius: 12px; }

/* ---------- ۱۴. مودال‌ها ---------- */
:is(#nam-portal, #nam-auth, #nam-track) .nam-modal-overlay {
    position: fixed; inset: 0;
    background: var(--nam-overlay);
    backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px);
    display: none; align-items: center; justify-content: center;
    padding: 16px;
    z-index: 999999;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-modal-overlay.is-visible { display: flex; animation: namFadeIn .2s ease; }
@keyframes namFadeIn { from { opacity: 0; } to { opacity: 1; } }
:is(#nam-portal, #nam-auth, #nam-track) .nam-modal-card {
    background: var(--nam-card-bg); color: var(--nam-text);
    border: 1px solid var(--nam-border); border-radius: 22px;
    padding: 22px; width: 100%; max-width: 560px; max-height: 92vh; overflow-y: auto;
    position: relative; box-shadow: var(--nam-shadow-lg);
    animation: namRise .26s cubic-bezier(.2, .8, .2, 1);
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-modal-card.is-wide { max-width: 880px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-modal-card.is-narrow { max-width: 460px; }
@keyframes namRise { from { transform: translateY(14px) scale(.98); opacity: 0; } to { transform: none; opacity: 1; } }
:is(#nam-portal, #nam-auth, #nam-track) .nam-modal-head { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; padding-left: 40px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-modal-head h3 { font-size: 16.5px; font-weight: 900; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-modal-head p { font-size: 12.5px; color: var(--nam-text-muted); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-modal-close-icon {
    position: absolute; top: 16px; left: 16px; width: 34px; height: 34px; border-radius: 10px;
    display: grid; place-items: center; color: var(--nam-text-muted); background: var(--nam-surface-2); transition: all .15s;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-modal-close-icon:hover { background: var(--nam-surface-3); color: var(--nam-text-title); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-modal-close-icon svg { width: 16px; height: 16px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-modal-actions { display: flex; gap: 10px; margin-top: 18px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-modal-actions > * { flex: 1; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-loading { display: flex; align-items: center; justify-content: center; gap: 10px; padding: 34px; color: var(--nam-text-muted); font-size: 13px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-spinner { width: 20px; height: 20px; border-radius: 50%; border: 2.5px solid var(--nam-border); border-top-color: var(--nam-primary); animation: namSpin .7s linear infinite; }
@keyframes namSpin { to { transform: rotate(360deg); } }
:is(#nam-portal, #nam-auth, #nam-track) #nam-order-modal-content .nam-invoice-box { max-width: 100%; }

/* ---------- ۱۵. اعلان‌ها (توست) ---------- */
.nam-toast-stack {
    position: fixed; top: calc(16px + env(safe-area-inset-top, 0px)); left: 50%; transform: translateX(-50%);
    z-index: 2147483000; display: flex; flex-direction: column; gap: 8px; align-items: center;
    pointer-events: none; width: min(420px, calc(100vw - 32px));
    font-family: 'Vazirmatn', Tahoma, sans-serif; direction: rtl;
}
.nam-toast {
    pointer-events: auto; width: 100%;
    display: flex; align-items: flex-start; gap: 10px;
    padding: 12px 14px; border-radius: 14px;
    background: #0F2420; color: #F0F7F5; font-size: 13px; line-height: 1.7; font-weight: 600;
    box-shadow: 0 18px 40px -16px rgba(0, 0, 0, .55);
    animation: namToastIn .3s cubic-bezier(.2, .8, .2, 1);
}
.nam-toast.is-out { animation: namToastOut .25s ease forwards; }
.nam-toast i { width: 22px; height: 22px; border-radius: 50%; display: grid; place-items: center; flex-shrink: 0; font-style: normal; font-size: 12px; font-weight: 900; color: #fff; background: #1A433C; margin-top: 1px; }
.nam-toast.is-success i { background: #17A34A; }
.nam-toast.is-error i { background: #E5484D; }
.nam-toast.is-warn i { background: #EF8A17; }
@keyframes namToastIn { from { opacity: 0; transform: translateY(-10px) scale(.97); } to { opacity: 1; transform: none; } }
@keyframes namToastOut { to { opacity: 0; transform: translateY(-8px); } }

/* ---------- ۱۶. منوی پایین موبایل ---------- */
#nam-portal .nam-mobile-bottom-nav { display: none; }

/* ---------- ۱۷. صفحه ورود و ثبت‌نام ---------- */
#nam-auth {
    max-width: 960px; width: 100%; margin: 32px auto;
    background: var(--nam-card-bg);
    border: 1px solid var(--nam-border);
    border-radius: 24px;
    overflow: hidden;
    display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    box-shadow: var(--nam-shadow);
}
#nam-auth .nam-auth-art {
    position: relative; padding: 32px; color: #fff; display: flex; flex-direction: column; justify-content: space-between; gap: 24px;
    background: #1A3934; isolation: isolate; min-height: 520px;
}
#nam-auth .nam-auth-art::before {
    content: ""; position: absolute; inset: 0; z-index: -1;
    background: radial-gradient(90% 60% at 80% 0%, rgba(95, 214, 180, .10), transparent 70%), linear-gradient(180deg, #1A433C 0%, #1A3934 55%, #1A2B29 100%);
}
#nam-auth .nam-auth-art h2 { color: #fff; font-size: 26px; font-weight: 900; line-height: 1.5; }
#nam-auth .nam-auth-art p { color: rgba(255,255,255,.8); font-size: 13.5px; margin-top: 8px; max-width: 34ch; }
#nam-auth .nam-auth-brand { display: flex; align-items: center; gap: 10px; }
#nam-auth .nam-auth-brand .nam-brand-mark { background: #fff; color: #1A433C; box-shadow: none; }
#nam-auth .nam-auth-brand b { font-size: 15px; font-weight: 900; color: #fff; display: block; line-height: 1.3; }
#nam-auth .nam-auth-brand span { font-size: 11.5px; color: rgba(255,255,255,.75); }
#nam-auth .nam-auth-mini {
    background: #fff; color: #0F2420; border-radius: 16px; padding: 12px; width: 220px; max-width: 100%;
    box-shadow: 0 30px 50px -20px rgba(0, 0, 0, .45); transform: rotate(-3deg);
}
#nam-auth .nam-auth-mini b { display: block; text-align: center; font-size: 13px; font-weight: 900; border-bottom: 2px solid #0F2420; padding-bottom: 4px; margin-bottom: 6px; color: #0F2420; }
#nam-auth .nam-auth-mini-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 3px; }
#nam-auth .nam-auth-mini-grid i { height: 16px; border-radius: 3px; background: #EAF0EE; display: block; }
#nam-auth .nam-auth-mini-grid i.on { background: linear-gradient(160deg, #1A433C, #2F8F9D); }
#nam-auth .nam-auth-feats { display: grid; gap: 8px; font-size: 12.5px; color: rgba(255,255,255,.88); }
#nam-auth .nam-auth-feats span { display: flex; align-items: center; gap: 8px; }
#nam-auth .nam-auth-feats svg { width: 16px; height: 16px; }
#nam-auth .nam-auth-form { padding: 32px; display: flex; flex-direction: column; justify-content: center; gap: 18px; }
#nam-auth .nam-auth-form h3 { font-size: 20px; font-weight: 900; }
#nam-auth .nam-auth-form > div > p { font-size: 13px; color: var(--nam-text-muted); }
#nam-auth .nam-auth-tabs { display: grid; grid-template-columns: 1fr 1fr; background: var(--nam-surface-2); border: 1px solid var(--nam-border); border-radius: 13px; padding: 4px; }
#nam-auth .nam-auth-tab-btn { padding: 9px; border-radius: 10px; font-size: 13px; font-weight: 800; color: var(--nam-text-muted); transition: all .15s; }
#nam-auth .nam-auth-tab-btn.active { background: var(--nam-card-bg); color: var(--nam-text-title); box-shadow: var(--nam-shadow-sm); }
#nam-auth .nam-auth-stack { display: grid; gap: 12px; }
#nam-auth .nam-auth-field { position: relative; }
#nam-auth .nam-auth-field svg { position: absolute; right: 14px; top: 50%; transform: translateY(-50%); width: 18px; height: 18px; color: var(--nam-text-faint); pointer-events: none; }
#nam-auth .nam-auth-field .nam-auth-input { padding-right: 42px; }
#nam-auth .nam-auth-otp { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; }
#nam-auth .nam-auth-otp .nam-auth-input { letter-spacing: .4em; text-align: center; font-weight: 800; direction: ltr; }
#nam-auth .nam-auth-btn { width: 100%; padding: 13px; font-size: 14px; }
#nam-auth .nam-auth-btn-otp { padding: 0 16px; font-size: 12.5px; min-width: 120px; }
#nam-auth .nam-auth-links { display: flex; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
#nam-auth .nam-auth-link { color: var(--nam-primary); font-size: 12.5px; font-weight: 700; cursor: pointer; }
#nam-auth .nam-auth-link:hover { text-decoration: underline; }
#nam-auth .nam-auth-back { text-align: center; }
#nam-auth .nam-auth-note { font-size: 11.5px; color: var(--nam-text-muted); text-align: center; }

/* ---------- ۱۸. رهگیری اصالت ---------- */
#nam-track {
    max-width: 640px; width: 100%; margin: 32px auto; background: var(--nam-card-bg);
    border: 1px solid var(--nam-border); border-radius: 24px; overflow: hidden; box-shadow: var(--nam-shadow);
}
#nam-track .nam-track-head { padding: 26px 26px 22px; background: var(--nam-ink); color: #fff; position: relative; overflow: hidden; }
#nam-track .nam-track-head::after {
    content: ""; position: absolute; inset: 0; pointer-events: none;
    background: radial-gradient(70% 140% at 0% 0%, rgba(26, 67, 60, .6), transparent 60%),
        repeating-linear-gradient(45deg, rgba(255,255,255,.04) 0 14px, transparent 14px 40px);
}
#nam-track .nam-track-head > * { position: relative; z-index: 1; }
#nam-track .nam-track-head h3 { color: #fff; font-size: 19px; font-weight: 900; margin-top: 14px; }
#nam-track .nam-track-head p { color: rgba(255,255,255,.72); font-size: 12.5px; margin-top: 4px; }
#nam-track .nam-track-search { display: flex; gap: 8px; margin-top: 18px; background: #fff; border-radius: 14px; padding: 6px; }
#nam-track .nam-track-search input { flex: 1; min-width: 0; border: 0; outline: none; background: transparent; padding: 8px 10px; font-size: 13.5px; color: #0F2420; }
#nam-track .nam-track-search input::placeholder { color: #8AA09B; }
#nam-track .nam-track-body { padding: 22px 26px 26px; }
#nam-track .nam-cert { border: 1px solid var(--nam-border); border-radius: 18px; overflow: hidden; }
#nam-track .nam-cert-top { display: flex; align-items: center; gap: 12px; padding: 14px 16px; background: var(--nam-green-soft); }
#nam-track .nam-cert-seal { width: 42px; height: 42px; border-radius: 50%; display: grid; place-items: center; background: var(--nam-green); color: #fff; flex-shrink: 0; }
#nam-track .nam-cert-seal svg { width: 22px; height: 22px; }
#nam-track .nam-cert-top strong { display: block; color: var(--nam-text-title); font-size: 14px; }
#nam-track .nam-cert-top span { font-size: 12px; color: var(--nam-text-muted); }
#nam-track .nam-cert dl { margin: 0; display: grid; grid-template-columns: auto 1fr; }
#nam-track .nam-cert dt, #nam-track .nam-cert dd { margin: 0; padding: 10px 16px; border-top: 1px solid var(--nam-border); font-size: 13px; }
#nam-track .nam-cert dt { color: var(--nam-text-muted); white-space: nowrap; }
#nam-track .nam-cert dd { color: var(--nam-text-title); font-weight: 700; text-align: left; }
#nam-track .nam-cert-foot { padding: 14px 16px; border-top: 1px solid var(--nam-border); text-align: center; }
#nam-track .nam-track-idle { display: flex; gap: 12px; align-items: center; color: var(--nam-text-muted); font-size: 12.5px; }
#nam-track .nam-track-idle svg { width: 36px; height: 36px; color: var(--nam-text-faint); flex-shrink: 0; }

/* ---------- ۱۹. واکنش‌گرا ---------- */
@media (max-width: 1180px) {
    #nam-portal .nam-shell { grid-template-columns: 220px minmax(0, 1fr); }
    #nam-portal .nam-cols { grid-template-columns: minmax(0, 1fr); }
    #nam-portal .nam-sticky { position: static; }
    :is(#nam-portal, #nam-auth, #nam-track) .nam-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    :is(#nam-portal, #nam-auth, #nam-track) .nam-admin-controls { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
}
@media (max-width: 900px) {
    #nam-portal {
        margin: 0; border-radius: 0; border: 0;
        padding: 12px 12px calc(96px + env(safe-area-inset-bottom, 0px));
    }
    #nam-portal .nam-shell { grid-template-columns: minmax(0, 1fr); }
    #nam-portal .nam-side { display: none; }
    #nam-portal .nam-topbar { padding: 12px; border-radius: 16px; }
    #nam-portal .nam-topbar-title h1 { font-size: 17px; }
    #nam-portal .nam-mobile-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
    #nam-portal .nam-topbar-desk-only { display: none; }
    #nam-portal .nam-topbar-actions { width: 100%; }
    #nam-portal .nam-wallet-pill { flex: 1; justify-content: space-between; }
    #nam-portal .nam-steps { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    #nam-portal .nam-step { flex-direction: column; text-align: center; gap: 4px; padding: 8px 4px; font-size: 11px; }
    #nam-portal .nam-step small { display: none; }
    #nam-portal .nam-top-media-nav { grid-template-columns: minmax(0, 1fr); }
    #nam-portal .nam-wallet-grid, #nam-portal .nam-hero-band { grid-template-columns: minmax(0, 1fr); }
    #nam-portal .nam-howto { grid-template-columns: minmax(0, 1fr); }
    :is(#nam-portal, #nam-auth, #nam-track) .nam-order-item-card { grid-template-columns: minmax(0, 1fr) auto; }
    :is(#nam-portal, #nam-auth, #nam-track) .nam-order-item-card .nam-order-meta { grid-column: 1 / -1; order: 3; }
    :is(#nam-portal, #nam-auth, #nam-track) .nam-order-actions { grid-column: 1 / -1; justify-content: flex-start; order: 4; }
    :is(#nam-portal, #nam-auth, #nam-track) .nam-admin-controls { grid-template-columns: minmax(0, 1fr); }
    :is(#nam-portal, #nam-auth, #nam-track) .nam-field-row { grid-template-columns: minmax(0, 1fr); }
    :is(#nam-portal, #nam-auth, #nam-track) .nam-card { padding: 16px; }

    #nam-portal .nam-mobile-bottom-nav {
        display: flex; position: fixed; z-index: 999990;
        left: 12px; right: 12px; bottom: calc(12px + env(safe-area-inset-bottom, 0px));
        height: 66px; padding: 6px;
        justify-content: space-around; align-items: center;
        background: var(--nam-card-bg);
        border: 1px solid var(--nam-border);
        border-radius: 22px;
        box-shadow: 0 18px 40px -18px rgba(10, 24, 21, .45);
    }
    #nam-portal .nam-mob-nav-item {
        flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px;
        color: var(--nam-text-muted); font-size: 10.5px; font-weight: 700; padding: 4px 0; background: transparent;
        transition: color .15s;
    }
    #nam-portal .nam-mob-nav-item svg { width: 21px; height: 21px; transition: transform .2s; }
    #nam-portal .nam-mob-nav-item.active { color: var(--nam-primary); font-weight: 900; }
    #nam-portal .nam-mob-nav-item.active svg { transform: translateY(-1px); }
    #nam-portal .nam-mob-nav-item.nam-mob-highlight { transform: translateY(-16px); color: var(--nam-text-title); }
    #nam-portal .nam-mob-icon-circle {
        width: 52px; height: 52px; border-radius: 18px; display: grid; place-items: center;
        background: var(--nam-primary-solid); color: #fff;
        box-shadow: 0 12px 22px -10px var(--nam-primary);
        border: 4px solid var(--nam-bg);
    }
    #nam-portal .nam-mob-icon-circle svg { width: 22px; height: 22px; }

    #nam-auth { grid-template-columns: minmax(0, 1fr); margin: 16px auto; border-radius: 20px; }
    #nam-auth .nam-auth-art { min-height: 0; padding: 22px; }
    #nam-auth .nam-auth-art h2 { font-size: 19px; }
    #nam-auth .nam-auth-mini, #nam-auth .nam-auth-feats { display: none; }
    #nam-auth .nam-auth-form { padding: 22px; }
    #nam-track .nam-track-head, #nam-track .nam-track-body { padding-left: 18px; padding-right: 18px; }
}
@media (max-width: 520px) {
    :is(#nam-portal, #nam-auth, #nam-track) .nam-kpis { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 10px; }
    :is(#nam-portal, #nam-auth, #nam-track) .nam-kpi { padding: 12px; }
    :is(#nam-portal, #nam-auth, #nam-track) .nam-kpi-value { font-size: 18px; }
    :is(#nam-portal, #nam-auth, #nam-track) .nam-np-grid-24 { grid-template-rows: repeat(6, 34px); }
    #nam-portal .nam-hero-stats { grid-template-columns: 1fr 1fr; }
    :is(#nam-portal, #nam-auth, #nam-track) .nam-modal-overlay { align-items: flex-end; padding: 0; }
    :is(#nam-portal, #nam-auth, #nam-track) .nam-modal-card { border-radius: 22px 22px 0 0; max-height: 90vh; padding-bottom: calc(22px + env(safe-area-inset-bottom, 0px)); }
}
@media (prefers-reduced-motion: reduce) {
    :is(#nam-portal, #nam-auth, #nam-track) *, :is(#nam-portal, #nam-auth, #nam-track) *::before, :is(#nam-portal, #nam-auth, #nam-track) *::after { animation: none !important; transition: none !important; }
}

/* ---------- ۲۰. کمکی‌ها ---------- */
#nam-portal .nam-mob-only { display: none; }
@media (max-width: 900px) {
    #nam-portal .nam-mob-only { display: inline-grid; }
    #nam-portal .nam-desk-only { display: none; }
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-stack { display: grid; gap: 14px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-stack > .nam-card + .nam-card { margin-top: 0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-divider { height: 1px; background: var(--nam-border); margin: 16px 0; border: 0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-inline-status { font-size: 11.5px; color: var(--nam-green); font-weight: 700; margin-top: 6px; min-height: 0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-inline-status:empty { display: none; }
:is(#nam-portal, #nam-auth, #nam-track) :where(ol, ul, li) { list-style: none; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-modal-card.is-wide { padding-top: 60px; }
#nam-portal #tab-agent-desk .nam-order-item-card { grid-template-columns: minmax(0, 1.3fr) minmax(0, 1.2fr) auto auto; }


/* ===== سطوح کیف پول ===== */
:is(#nam-portal, #nam-auth, #nam-track) .nam-bank-card.is-tier-bronze { --bc1: #D9965F; --bc2: #A9632F; --bc3: #6E3A14; background: #A9632F; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-bank-card.is-tier-silver { --bc1: #C9D1DA; --bc2: #8793A1; --bc3: #556171; background: #8793A1; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-bank-card.is-tier-gold   { --bc1: #F5D26B; --bc2: #D19A12; --bc3: #8E6204; background: #D19A12; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-bank-card-foot { background: rgba(0,0,0,.32) !important; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tier-badge { display: inline-flex; align-items: center; gap: 5px; font-size: 11.5px; font-weight: 800; color: #fff; background: rgba(255,255,255,.2); border: 1px solid rgba(255,255,255,.3); padding: 4px 10px; border-radius: 99px; backdrop-filter: blur(4px); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tier-badge svg { width: 14px; height: 14px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tier-progress { margin-bottom: 14px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tier-progress-top { display: flex; justify-content: space-between; gap: 10px; flex-wrap: wrap; font-size: 12px; color: var(--nam-text-muted); margin-bottom: 8px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tier-progress-top b { color: var(--nam-text-title); font-weight: 800; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tier-bar { height: 8px; border-radius: 99px; background: var(--nam-surface-3); overflow: hidden; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tier-bar i { display: block; height: 100%; border-radius: 99px; background: linear-gradient(90deg, #D9965F, #D19A12); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tier-list { display: flex; flex-direction: column; gap: 8px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tier-row { --tc: #7B8C87; display: flex; align-items: center; gap: 12px; padding: 11px 12px; border: 1px solid var(--nam-border); border-radius: 14px; background: var(--nam-surface-2); opacity: .72; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tier-row.is-bronze { --tc: #A9632F; } :is(#nam-portal, #nam-auth, #nam-track) .nam-tier-row.is-silver { --tc: #7F8B99; } :is(#nam-portal, #nam-auth, #nam-track) .nam-tier-row.is-gold { --tc: #C28F0E; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tier-row.is-reached { opacity: 1; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tier-row.is-active { opacity: 1; border-color: var(--tc); background: color-mix(in srgb, var(--tc) 10%, var(--nam-card-bg)); box-shadow: 0 0 0 3px color-mix(in srgb, var(--tc) 16%, transparent); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tier-medal { width: 38px; height: 38px; border-radius: 12px; display: grid; place-items: center; flex-shrink: 0; color: #fff; background: var(--tc); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tier-medal svg { width: 18px; height: 18px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tier-info { flex: 1; min-width: 0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tier-info strong { display: block; font-size: 13.5px; font-weight: 800; color: var(--nam-text-title); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tier-info strong em { font-style: normal; font-size: 10.5px; font-weight: 800; color: #fff; background: var(--tc); padding: 2px 8px; border-radius: 99px; margin-right: 6px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tier-info small { font-size: 11.5px; color: var(--nam-text-muted); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tier-pct { font-size: 13px; font-weight: 900; color: var(--tc); white-space: nowrap; }

:is(#nam-portal, #nam-auth, #nam-track) .nam-wallet-pill strong, :is(#nam-portal, #nam-auth, #nam-track) .nam-wallet-pill span { white-space: nowrap; }
@media (max-width: 420px) { :is(#nam-portal, #nam-auth, #nam-track).nam-wallet-pill, :is(#nam-portal, #nam-auth, #nam-track) .nam-wallet-pill { gap: 8px; } :is(#nam-portal, #nam-auth, #nam-track) .nam-wallet-pill .nam-btn { padding-inline: 12px; } }

:is(#nam-portal, #nam-auth, #nam-track) .nam-tpl-chips { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; margin: 0 0 8px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tpl-chips > span { font-size: 11.5px; color: var(--nam-text-muted); font-weight: 700; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-addon-group-title { font-size: 11.5px; font-weight: 800; color: var(--nam-text-muted); margin: 14px 0 8px; letter-spacing: .02em; }

/* ---------- مرکزچین‌کردن آیکون‌ها ---------- */
:is(#nam-portal, #nam-auth, #nam-track) .nam-pay-opt .nam-pay-ico, :is(#nam-portal, #nam-auth, #nam-track) .nam-drop .nam-drop-ico, :is(#nam-portal, #nam-auth, #nam-track) .nam-media-ico, :is(#nam-portal, #nam-auth, #nam-track) .nam-kpi-ico, :is(#nam-portal, #nam-auth, #nam-track) .nam-wallet-ico, :is(#nam-portal, #nam-auth, #nam-track) .nam-empty-ico { display: grid !important; place-items: center; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pay-ico svg, :is(#nam-portal, #nam-auth, #nam-track) .nam-drop-ico svg, :is(#nam-portal, #nam-auth, #nam-track) .nam-media-ico svg, :is(#nam-portal, #nam-auth, #nam-track) .nam-kpi-ico svg { display: block; margin: 0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn svg, :is(#nam-portal, #nam-auth, #nam-track) .nam-btn-add-funds svg, :is(#nam-portal, #nam-auth, #nam-track) .nam-btn-primary-action svg, :is(#nam-portal, #nam-auth, #nam-track) .nam-chip svg { display: block; flex-shrink: 0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn-add-funds { line-height: 1; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn--sm { padding: 7px 12px; font-size: 12px; }

/* ---------- ثبت آگهی مرحله‌ای ---------- */
:is(#nam-portal, #nam-auth, #nam-track) .nam-wiz-off { display: none !important; }
#nam-portal .nam-cols.is-single { grid-template-columns: minmax(0, 1fr); }
#nam-portal .nam-cols.is-single .nam-sticky { position: static; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-wiz-nav { display: flex; justify-content: space-between; gap: 10px; width: 100%; margin-top: 6px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-wiz-nav .nam-btn { min-width: 150px; justify-content: center; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-step { cursor: default; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-step.is-done { cursor: pointer; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-recap { display: grid; gap: 6px; margin-bottom: 12px; padding: 12px 14px; border-radius: 14px; background: var(--nam-surface-2); border: 1px solid var(--nam-border); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-recap div { display: flex; justify-content: space-between; gap: 12px; font-size: 12.5px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-recap span { color: var(--nam-text-muted); flex-shrink: 0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-recap b { color: var(--nam-text-title); font-weight: 800; text-align: left; min-width: 0; overflow-wrap: anywhere; }

/* ---------- نقشه آدرس ---------- */
:is(#nam-portal, #nam-auth, #nam-track) .nam-ship-label { display: flex; align-items: center; gap: 6px; font-size: 12.5px; font-weight: 800; color: var(--nam-text-title); margin-bottom: 8px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-ship-label svg { width: 16px; height: 16px; color: var(--nam-primary); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-ship-map { height: 260px; border-radius: 14px; overflow: hidden; border: 1px solid var(--nam-border); background: var(--nam-surface-3); position: relative; z-index: 0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-ship-map.is-fallback { cursor: crosshair; background:
    linear-gradient(90deg, transparent 49%, rgba(255,255,255,.55) 49% 51%, transparent 51%) 0 0 / 90px 100%,
    linear-gradient(0deg, transparent 49%, rgba(255,255,255,.55) 49% 51%, transparent 51%) 0 0 / 100% 70px,
    linear-gradient(135deg, var(--nam-surface-3), var(--nam-surface-2)); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-fake-pin { position: absolute; width: 28px; height: 28px; margin: -28px 0 0 -14px; color: #E5484D; pointer-events: none; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-fake-pin svg { width: 28px; height: 28px; fill: #E5484D; stroke: #fff; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-fake-note { position: absolute; bottom: 8px; right: 10px; font-size: 10.5px; color: var(--nam-text-muted); background: var(--nam-card-bg); padding: 3px 8px; border-radius: 99px; border: 1px solid var(--nam-border); pointer-events: none; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-ship-actions { margin-top: 8px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-ship-addr { margin-top: 8px; padding: 10px 12px; border-radius: 12px; background: var(--nam-surface-2); border: 1px solid var(--nam-border); font-size: 12.5px; line-height: 1.9; color: var(--nam-text-title); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-ship-addr.is-empty { color: var(--nam-text-muted); border-style: dashed; }

:is(#nam-portal, #nam-auth, #nam-track) #nam-newspaper-pick .nam-label { display: flex; align-items: center; justify-content: flex-start; gap: 6px; }
:is(#nam-portal, #nam-auth, #nam-track) #nam-newspaper-pick .nam-label svg { width: 15px; height: 15px; color: var(--nam-primary); }

/* ---------- کارت‌های بانکی من (اسکرول افقی کنار کیف پول) ---------- */
:is(#nam-portal, #nam-auth, #nam-track) .nam-card-strip { display: flex; gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; padding: 4px 2px 14px; margin: 0 -2px; -webkit-overflow-scrolling: touch; scrollbar-width: thin; scrollbar-color: var(--nam-border) transparent; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-card-strip::-webkit-scrollbar { height: 6px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-card-strip::-webkit-scrollbar-thumb { background: var(--nam-border); border-radius: 9px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-strip-item { flex: 0 0 min(100%, 380px); scroll-snap-align: center; min-width: 0; display: flex; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-strip-item .nam-bank-card { max-width: none; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-user-card .nam-bank-card-top { padding: 18px 20px 10px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-user-card .nam-bank-card-brand span { font-size: 13px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-bc-logo { width: 38px; height: 38px; border-radius: 50%; background: #fff; color: var(--bc2); display: grid; place-items: center; overflow: hidden; font-size: 18px; font-weight: 900; box-shadow: 0 4px 10px rgba(0,0,0,.25); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-bc-logo img { width: 100%; height: 100%; object-fit: contain; padding: 5px; box-sizing: border-box; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-bc-number { direction: ltr; font-size: clamp(15px, 4.6vw, 19px); font-weight: 800; letter-spacing: .08em; color: #fff; font-variant-numeric: tabular-nums; text-align: left; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-card-remove { border: 0; cursor: pointer; width: 28px; height: 28px; border-radius: 999px; background: rgba(255,255,255,.18); color: #fff; font: 700 16px/1 inherit; display: grid; place-items: center; padding: 0; transition: background .2s; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-card-remove:hover { background: rgba(255,255,255,.32); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-card-remove.is-sure { width: auto; padding: 0 10px; font-size: 12px; background: #C0392B; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-add-card-tile { width: 100%; min-height: 200px; border: 2px dashed var(--nam-border); border-radius: 22px; background: transparent; color: var(--nam-text-muted); cursor: pointer; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; font-family: inherit; transition: border-color .2s, color .2s, background .2s; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-add-card-tile:hover { border-color: var(--nam-primary); color: var(--nam-primary); background: var(--nam-primary-light); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-add-card-tile > span { display: grid !important; place-items: center; width: 46px; height: 46px; border-radius: 50%; background: var(--nam-surface-2); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-add-card-tile b { font-size: 14px; color: var(--nam-text-title); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-add-card-tile small { font-size: 12px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-bank-chip { display: inline-flex; align-items: center; padding: 5px 12px; border-radius: 999px; color: #fff; background: var(--bc2, #4A5962); font-size: 12px; font-weight: 800; white-space: nowrap; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-bank-chip[hidden] { display: none; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-user-card-chip { display: inline-block; padding: 1px 9px; border-radius: 999px; color: #fff; background: var(--bc2, #4A5962); font-size: 11px; font-weight: 800; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-card-hint { font-size: 12px; color: var(--nam-text-muted); margin: 10px 0 0; line-height: 1.8; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-card-actions { display: flex; gap: 10px; margin-top: 14px; flex-wrap: wrap; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-own-check { display: flex; align-items: center; gap: 10px; margin-top: 12px; cursor: pointer; font-size: 13px; color: var(--nam-text-title); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-own-check input { position: absolute; opacity: 0; pointer-events: none; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-own-check .nam-check { width: 22px; height: 22px; border-radius: 7px; border: 2px solid var(--nam-border); display: grid; place-items: center; color: transparent; flex: none; transition: all .2s; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-own-check .nam-check svg { width: 14px; height: 14px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-own-check input:checked + .nam-check { background: var(--nam-primary-solid, #1A433C); border-color: var(--nam-primary-solid, #1A433C); color: #fff; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-own-check input:focus-visible + .nam-check { outline: 2px solid var(--nam-primary); outline-offset: 2px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tabs2 { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; padding: 4px; border-radius: 14px; background: var(--nam-surface-2); margin-bottom: 14px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tabs2 button { border: 0; background: transparent; padding: 10px 8px; border-radius: 11px; font: 700 13px inherit; font-family: inherit; color: var(--nam-text-muted); cursor: pointer; transition: all .2s; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tabs2 button.is-on { background: var(--nam-card-bg); color: var(--nam-text-title); box-shadow: 0 2px 8px rgba(0,0,0,.12); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-paycards { display: flex; flex-direction: column; gap: 8px; margin-top: 6px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-paycard { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border: 1.5px solid var(--nam-border); border-radius: 12px; cursor: pointer; transition: border-color .2s, background .2s; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-paycard input { position: absolute; opacity: 0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-paycard:has(input:checked) { border-color: var(--nam-primary); background: var(--nam-primary-light); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-paycard-dot { width: 12px; height: 12px; border-radius: 50%; flex: none; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-paycard-t { display: flex; justify-content: space-between; align-items: center; flex: 1; min-width: 0; gap: 8px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-paycard-t b { font-size: 13px; color: var(--nam-text-title); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-paycard-t small { color: var(--nam-text-muted); font-size: 12px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-paycards-empty { padding: 14px; border: 1.5px dashed var(--nam-border); border-radius: 12px; font-size: 12.5px; line-height: 1.9; color: var(--nam-text-muted); display: flex; flex-direction: column; gap: 10px; align-items: flex-start; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-topup-row { display: flex; justify-content: space-between; align-items: center; gap: 8px; padding: 9px 0; border-bottom: 1px dashed var(--nam-border); font-size: 12.5px; color: var(--nam-text-title); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-topup-row em { font-style: normal; font-size: 11.5px; font-weight: 800; padding: 3px 10px; border-radius: 999px; background: rgba(217,150,40,.16); color: #A86A0A; white-space: nowrap; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-topup-row.is-approved em { background: rgba(47,170,110,.16); color: #1E8A55; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-topup-row.is-rejected em { background: rgba(200,60,50,.14); color: #B3342B; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-topup-admin-row { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; padding: 12px 0; border-bottom: 1px dashed var(--nam-border); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-topup-admin-info { display: flex; flex-direction: column; gap: 3px; min-width: 0; font-size: 13px; color: var(--nam-text-title); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-topup-admin-info small { color: var(--nam-text-muted); font-size: 12px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-topup-admin-actions { display: flex; gap: 8px; flex-wrap: wrap; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-empty-mini { padding: 16px 0; color: var(--nam-text-muted); font-size: 13px; text-align: center; }
@media (max-width: 600px) { :is(#nam-portal, #nam-auth, #nam-track) .nam-strip-item { flex-basis: 86%; } }

/* ---------- لایهٔ ظرافت‌کاری (نسخه ۱.۰.۰) ---------- */
:is(#nam-portal, #nam-auth, #nam-track) .nam-seg { max-width: 100%; }
@media (max-width: 720px) {
  :is(#nam-portal, #nam-auth, #nam-track) .nam-toolbar { flex-direction: column; align-items: stretch; gap: 10px; }
  :is(#nam-portal, #nam-auth, #nam-track) .nam-seg { display: flex; flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; width: 100%; }
  :is(#nam-portal, #nam-auth, #nam-track) .nam-seg::-webkit-scrollbar { display: none; }
  :is(#nam-portal, #nam-auth, #nam-track) .nam-seg button { flex: 0 0 auto; white-space: nowrap; }
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-share-row { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 12px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-share { display: inline-flex; align-items: center; justify-content: center; padding: 8px 16px; border-radius: 999px; border: 1px solid var(--nam-border-input); color: var(--nam-text-title); font-size: 13px; font-weight: 700; text-decoration: none; background: var(--nam-card-bg); transition: border-color .2s, background .2s, transform .15s; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-share:hover { border-color: var(--nam-primary); background: var(--nam-primary-light); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-share:active { transform: scale(.97); }
:is(#nam-portal, #nam-auth, #nam-track) ::selection { background: var(--nam-primary-light); }
:is(#nam-portal, #nam-auth, #nam-track) :focus-visible { outline: 2px solid var(--nam-primary); outline-offset: 2px; border-radius: 8px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn { transition: background .2s, box-shadow .2s, transform .15s, border-color .2s; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn:active:not(:disabled) { transform: translateY(1px) scale(.985); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn:disabled { opacity: .55; cursor: not-allowed; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-card { transition: box-shadow .25s, border-color .25s; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-card:hover { box-shadow: var(--nam-shadow-lg); border-color: var(--nam-border-input); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-card, :is(#nam-portal, #nam-auth, #nam-track) .nam-kpi, :is(#nam-portal, #nam-auth, #nam-track) .nam-bank-card { font-variant-numeric: tabular-nums; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-input-text { transition: border-color .2s, box-shadow .2s, background .2s; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-input-text:hover { border-color: var(--nam-primary); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-input-text:focus { border-color: var(--nam-primary); box-shadow: 0 0 0 4px var(--nam-primary-ring); outline: none; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-tab-pane { animation: namPaneIn .35s cubic-bezier(.2,.7,.2,1) both; }
@keyframes namPaneIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
:is(#nam-portal, #nam-auth, #nam-track) .nam-bank-card { transition: transform .35s cubic-bezier(.2,.7,.2,1), box-shadow .35s; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-bank-card:hover { transform: translateY(-3px) rotate(-.4deg); box-shadow: 0 34px 56px -24px rgba(0,0,0,.6); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-card-strip { scroll-padding-inline: 6px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-link-field .nam-input-text { font-weight: 700; letter-spacing: .01em; }
@media (prefers-reduced-motion: reduce) {
  :is(#nam-portal, #nam-auth, #nam-track) *, :is(#nam-portal, #nam-auth, #nam-track) *::before, :is(#nam-portal, #nam-auth, #nam-track) *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}


/* ==========================================================================
   سیستم طراحی ۲ — هویت مطبوعاتی
   ستون‌بندی روزنامه، تیتر درشت با خط کهربایی، ریل سبز تیره، ردیف‌های دفتری
   ========================================================================== */
#nam-portal { background: var(--nam-bg); border: 0; border-radius: 26px; padding: 16px; margin: 12px auto; max-width: 1440px; }
#nam-portal .nam-shell { grid-template-columns: 272px minmax(0, 1fr); gap: 22px; }

/* ریل کناری */
#nam-portal .nam-side {
    top: 12px; border: 0; border-radius: 22px; padding: 20px 14px 14px; color: #fff;
    background:
        repeating-linear-gradient(90deg, rgba(255,255,255,.035) 0 1px, transparent 1px 46px),
        radial-gradient(120% 60% at 100% 0%, rgba(95,214,180,.16), transparent 60%),
        linear-gradient(180deg, #1A433C 0%, #14302B 55%, #0F2420 100%);
    box-shadow: 0 30px 60px -30px rgba(10, 30, 26, .55);
    min-height: calc(100vh - 36px); max-height: calc(100vh - 24px);
    scrollbar-width: none;
}
#nam-portal .nam-side::-webkit-scrollbar { display: none; }
#nam-portal .nam-brand { padding: 0 8px 16px; border-bottom: 1px solid rgba(255,255,255,.1); }
#nam-portal .nam-brand-mark { background: #fff; color: #1A433C; box-shadow: none; border-radius: 13px; }
#nam-portal .nam-brand-name { color: #fff; font-size: 16px; }
#nam-portal .nam-brand-sub { color: rgba(255,255,255,.6); }
#nam-portal .nam-nav-label { color: rgba(255,255,255,.42); font-size: 10.5px; letter-spacing: .08em; }
#nam-portal .nam-nav-btn { color: rgba(255,255,255,.74); border-radius: 12px; padding: 11px 12px; }
#nam-portal .nam-nav-btn:hover { background: rgba(255,255,255,.08); color: #fff; }
#nam-portal .nam-nav-btn.active { background: rgba(255,255,255,.12); color: #fff; box-shadow: inset 0 0 0 1px rgba(255,255,255,.08); }
#nam-portal .nam-nav-btn.active::before { right: -14px; background: var(--nam-amber); width: 4px; top: 10px; bottom: 10px; }
#nam-portal .nam-nav-btn .nam-nav-tag { background: rgba(255,255,255,.12); color: rgba(255,255,255,.85); }
#nam-portal .nam-nav-btn.active .nam-nav-tag { background: var(--nam-amber); color: #2B1B00; }
#nam-portal .nam-side-promo { background: rgba(255,255,255,.06); border: 1px dashed rgba(231,176,74,.55); }
#nam-portal .nam-side-promo::after { display: none; }
#nam-portal .nam-side-promo strong { color: #F6D9A0; }
#nam-portal .nam-side-user { background: rgba(255,255,255,.07); }
#nam-portal .nam-side-user-name { color: #fff; }
#nam-portal .nam-side-user-role { color: rgba(255,255,255,.6); }
#nam-portal .nam-side .nam-icon-btn { color: rgba(255,255,255,.72); }
#nam-portal .nam-side .nam-icon-btn:hover { background: rgba(255,255,255,.12); color: #fff; border-color: transparent; }
#nam-portal .nam-avatar { background: linear-gradient(135deg, var(--nam-amber), #8E5E0B); color: #2B1B00; }

/* نوار بالا: تیتر مطبوعاتی */
#nam-portal .nam-topbar { background: transparent; border: 0; border-radius: 0; padding: 6px 2px 2px; align-items: flex-end; }
#nam-portal .nam-topbar-title h1 { font-size: clamp(22px, 3vw, 31px); font-weight: 900; letter-spacing: -.01em; }
#nam-portal .nam-topbar-title h1::after { content: ""; display: block; width: 52px; height: 4px; border-radius: 3px; background: var(--nam-amber); margin: 9px 0 8px; }
#nam-portal .nam-topbar-title p { font-size: 13px; }
#nam-portal .nam-cmd-trigger {
    display: inline-flex; align-items: center; gap: 10px; min-width: 210px; padding: 9px 12px; border-radius: 12px;
    background: var(--nam-card-bg); border: 1px solid var(--nam-border); color: var(--nam-text-muted); font-size: 12.5px; cursor: pointer;
    transition: border-color .2s, box-shadow .2s;
}
#nam-portal .nam-cmd-trigger:hover { border-color: var(--nam-primary); box-shadow: 0 0 0 4px var(--nam-primary-ring); }
#nam-portal .nam-cmd-trigger span { flex: 1; text-align: right; }
#nam-portal kbd { font-family: inherit; font-size: 10.5px; font-weight: 700; direction: ltr; padding: 2px 7px; border-radius: 6px; background: var(--nam-surface-3); color: var(--nam-text-muted); border: 1px solid var(--nam-border); }
#nam-portal .nam-wallet-pill { background: var(--nam-card-bg); }
#nam-portal .nam-wallet-pill .nam-wallet-ico { background: var(--nam-amber-soft); color: var(--nam-amber-ink); }
#nam-portal .nam-role-chip { background: var(--nam-primary-solid); }

/* کارت‌ها: تخت، با خط ظریف و نشانگر کهربایی */
:is(#nam-portal, #nam-auth, #nam-track) .nam-card { border-radius: 18px; padding: 22px; box-shadow: none; border-color: var(--nam-border); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-card:hover { box-shadow: none; border-color: var(--nam-border-input); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-card-head { padding-bottom: 14px; border-bottom: 1px solid var(--nam-border); margin-bottom: 18px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-card-title { font-size: 16px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-card-title:not(:has(.nam-step-num))::before { content: ""; width: 4px; height: 17px; border-radius: 2px; background: var(--nam-amber); flex: none; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn { border-radius: 13px; padding: 11px 20px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-btn--ghost { background: transparent; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-input-text { border-radius: 12px; }

/* نوار «امروز» */
:is(#nam-portal, #nam-auth, #nam-track) .nam-today {
    display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0; border-radius: 20px; overflow: hidden; color: #fff;
    background:
        repeating-linear-gradient(90deg, rgba(255,255,255,.04) 0 1px, transparent 1px 52px),
        linear-gradient(115deg, #1A433C 0%, #12302B 60%, #0F2420 100%);
    box-shadow: 0 24px 50px -30px rgba(10,30,26,.7);
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-today-clock { padding: 22px 28px; display: flex; flex-direction: column; justify-content: center; gap: 2px; border-left: 1px solid rgba(255,255,255,.12); min-width: 230px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-today-clock small { font-size: 11.5px; color: rgba(255,255,255,.65); font-weight: 700; letter-spacing: .04em; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-today-clock b { font-size: clamp(28px, 4vw, 40px); font-weight: 900; color: #F6D9A0; letter-spacing: .04em; line-height: 1.2; text-align: right; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-today-clock span { font-size: 11.5px; color: rgba(255,255,255,.62); max-width: 220px; line-height: 1.7; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-today-clock.is-late b { color: #FFA94D; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-today-body { padding: 20px 24px; display: flex; flex-direction: column; gap: 12px; min-width: 0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-today-body h3 { color: #fff; font-size: 14px; font-weight: 800; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-today-actions { display: flex; flex-wrap: wrap; gap: 10px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-todo {
    display: inline-flex; align-items: center; gap: 10px; padding: 9px 12px 9px 14px; border-radius: 12px; cursor: pointer; text-align: right; color: #fff;
    background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.12); font-size: 13px; font-weight: 700; transition: background .2s, transform .15s;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-todo:hover { background: rgba(255,255,255,.15); transform: translateY(-1px); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-todo i { width: 8px; height: 8px; border-radius: 50%; background: #8AA09B; flex: none; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-todo.is-wait i { background: #FFA94D; box-shadow: 0 0 0 4px rgba(255,169,77,.2); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-todo.is-ok i { background: #5FD6B4; box-shadow: 0 0 0 4px rgba(95,214,180,.2); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-todo.is-info i { background: #6CC3D1; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-todo.is-warn i { background: #FF6B70; box-shadow: 0 0 0 4px rgba(255,107,112,.22); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-todo em { font-style: normal; font-size: 11.5px; font-weight: 800; color: #2B1B00; background: var(--nam-amber); border-radius: 8px; padding: 2px 9px; }

/* شاخص‌ها: نوار تیکر */
:is(#nam-portal, #nam-auth, #nam-track) .nam-kpis { gap: 0; background: var(--nam-card-bg); border: 1px solid var(--nam-border); border-radius: 20px; overflow: hidden; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-kpi { border: 0; border-radius: 0; background: transparent; padding: 20px 22px; gap: 8px; position: relative; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-kpi + .nam-kpi { border-right: 1px solid var(--nam-border); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-kpi-value { font-size: clamp(22px, 2.4vw, 30px); letter-spacing: -.01em; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-kpi-ico { width: 32px; height: 32px; border-radius: 50%; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-kpi.is-featured { background: linear-gradient(160deg, #1A433C, #12302B); border-color: transparent; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-kpi.is-featured .nam-kpi-value { color: #F6D9A0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-kpi-foot a { color: var(--nam-primary); font-weight: 800; }

/* فهرست آگهی‌ها: ردیف دفتری با نوار مرحله */
:is(#nam-portal, #nam-auth, #nam-track) .nam-order-list { gap: 0; border: 1px solid var(--nam-border); border-radius: 16px; overflow: hidden; background: var(--nam-card-bg); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-order-item-card {
    grid-template-columns: minmax(0, 1.5fr) minmax(0, .9fr) auto minmax(190px, 1.1fr) auto; gap: 18px;
    border: 0; border-bottom: 1px solid var(--nam-border); border-radius: 0; padding: 16px 20px; background: transparent;
}
:is(#nam-portal, #nam-auth, #nam-track) .nam-order-item-card:last-of-type { border-bottom: 0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-order-item-card:hover { background: var(--nam-surface-2); border-color: var(--nam-border); box-shadow: none; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-media-dot { border-radius: 50%; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-ot { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; min-width: 0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-ot-step { position: relative; display: flex; flex-direction: column; align-items: center; gap: 5px; min-width: 0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-ot-step i { width: 11px; height: 11px; border-radius: 50%; background: var(--nam-surface-3); border: 2px solid var(--nam-border-input); z-index: 1; transition: all .2s; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-ot-step em { font-style: normal; font-size: 10px; font-weight: 700; color: var(--nam-text-faint); white-space: nowrap; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-ot-step::before { content: ""; position: absolute; top: 5px; right: 50%; width: 100%; height: 2px; background: var(--nam-border); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-ot-step:first-child::before { display: none; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-ot-step.is-done i { background: var(--nam-primary-solid); border-color: var(--nam-primary-solid); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-ot-step.is-done::before { background: var(--nam-primary-solid); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-ot-step.is-done em { color: var(--nam-text); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-ot-step.is-now i { background: var(--nam-card-bg); border-color: var(--nam-amber); box-shadow: 0 0 0 4px var(--nam-amber-soft); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-ot-step.is-now em { color: var(--nam-amber-ink); font-weight: 800; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-ot-step.is-now::before { background: linear-gradient(270deg, var(--nam-primary-solid), var(--nam-border)); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-ot-step.is-bad i { background: var(--nam-red); border-color: var(--nam-red); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-ot-step.is-bad em { color: var(--nam-red); font-weight: 800; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-ot.is-rejected .nam-ot-step:nth-child(n+3)::before { background: var(--nam-border); }
@media (max-width: 900px) {
  :is(#nam-portal, #nam-auth, #nam-track) .nam-order-item-card { grid-template-columns: minmax(0, 1fr) auto; gap: 12px; }
  :is(#nam-portal, #nam-auth, #nam-track) .nam-order-item-card .nam-order-meta { grid-column: 1 / -1; order: 3; }
  :is(#nam-portal, #nam-auth, #nam-track) .nam-order-item-card .nam-ot { grid-column: 1 / -1; order: 4; }
  :is(#nam-portal, #nam-auth, #nam-track) .nam-order-item-card .nam-pill { order: 2; justify-self: start; grid-column: 1 / -1; }
}

/* جداول */
:is(#nam-portal, #nam-auth, #nam-track) .nam-table th { font-size: 11px; letter-spacing: .04em; text-transform: none; border-bottom: 2px solid var(--nam-border); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-table tbody tr:hover td { background: var(--nam-surface-2); }

/* پالت فرمان */
:is(#nam-portal, #nam-auth, #nam-track) .nam-cmd { position: fixed; inset: 0; z-index: 99999; background: var(--nam-overlay); display: flex; align-items: flex-start; justify-content: center; padding: 12vh 16px 16px; backdrop-filter: blur(3px); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-cmd[hidden] { display: none; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-cmd-box { width: 100%; max-width: 560px; background: var(--nam-card-bg); border: 1px solid var(--nam-border); border-radius: 20px; box-shadow: var(--nam-shadow-lg); overflow: hidden; animation: namPaneIn .22s cubic-bezier(.2,.7,.2,1) both; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-cmd-input { display: flex; align-items: center; gap: 12px; padding: 14px 18px; border-bottom: 1px solid var(--nam-border); color: var(--nam-text-muted); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-cmd-input input { flex: 1; border: 0; background: transparent; outline: none; font-size: 15px; color: var(--nam-text-title); min-width: 0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-cmd-list { max-height: 52vh; overflow-y: auto; padding: 8px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-cmd-group { font-size: 10.5px; font-weight: 800; letter-spacing: .08em; color: var(--nam-text-faint); padding: 10px 10px 4px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-cmd-item { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 12px; border-radius: 11px; text-align: right; color: var(--nam-text); font-size: 13.5px; font-weight: 600; cursor: pointer; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-cmd-item.is-sel { background: var(--nam-primary-light); color: var(--nam-text-title); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-cmd-item em { font-style: normal; font-size: 11px; color: var(--nam-text-muted); white-space: nowrap; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-cmd-empty { padding: 26px; text-align: center; color: var(--nam-text-muted); font-size: 13px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-cmd-foot { display: flex; gap: 16px; padding: 9px 16px; border-top: 1px solid var(--nam-border); background: var(--nam-surface-2); font-size: 11px; color: var(--nam-text-muted); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-cmd-foot span { display: inline-flex; align-items: center; gap: 5px; }

/* واکنش‌گرا */
@media (max-width: 1180px) {
  #nam-portal .nam-shell { grid-template-columns: 236px minmax(0, 1fr); gap: 16px; }
  :is(#nam-portal, #nam-auth, #nam-track) .nam-kpi:nth-child(3) { border-right: 0; }
  :is(#nam-portal, #nam-auth, #nam-track) .nam-kpi:nth-child(n+3) { border-top: 1px solid var(--nam-border); }
  :is(#nam-portal, #nam-auth, #nam-track) .nam-today { grid-template-columns: 1fr; }
  :is(#nam-portal, #nam-auth, #nam-track) .nam-today-clock { border-left: 0; border-bottom: 1px solid rgba(255,255,255,.12); min-width: 0; }
}
@media (max-width: 900px) {
  #nam-portal { margin: 0; border-radius: 0; padding: 12px 12px calc(96px + env(safe-area-inset-bottom, 0px)); }
  #nam-portal .nam-shell { grid-template-columns: minmax(0, 1fr); }
  #nam-portal .nam-topbar { padding: 4px 2px 0; }
}
@media (max-width: 640px) {
  #nam-portal .nam-cmd-trigger { min-width: 0; padding: 9px; }
  #nam-portal .nam-cmd-trigger span, #nam-portal .nam-cmd-trigger kbd { display: none; }
  :is(#nam-portal, #nam-auth, #nam-track) .nam-today-clock { padding: 18px 20px; }
  :is(#nam-portal, #nam-auth, #nam-track) .nam-today-body { padding: 16px 18px; }
  :is(#nam-portal, #nam-auth, #nam-track) .nam-card { padding: 18px; border-radius: 16px; }
  #nam-portal #tab-my-orders > .nam-card { padding: 0; border: 0; background: transparent; }
  #nam-portal #tab-my-orders .nam-toolbar { margin-bottom: 12px; }
}

@media (min-width: 901px) {
  #nam-portal .nam-topbar { flex-wrap: nowrap; align-items: flex-start; }
  #nam-portal .nam-topbar-actions { margin-top: 4px; }
  #nam-portal .nam-topbar-title { flex: 1; min-width: 0; }
  #nam-portal .nam-topbar-actions { flex-wrap: nowrap; flex: none; }
}

/* ورود و رهگیری: هماهنگ با هویت جدید */
#nam-auth .nam-auth-art h2::after { content: ""; display: block; width: 52px; height: 4px; border-radius: 3px; background: var(--nam-amber); margin-top: 14px; }
#nam-auth .nam-auth-art { background-image: repeating-linear-gradient(90deg, rgba(255,255,255,.035) 0 1px, transparent 1px 46px), linear-gradient(160deg, #1A433C 0%, #12302B 60%, #0F2420 100%); }
#nam-auth .nam-card, #nam-track .nam-card { border-radius: 20px; }

/* فوکوس فیلدها: سبز روشن و ملایم، بدون کادر دوبل تیره */
:is(#nam-portal, #nam-auth, #nam-track) input:focus-visible, :is(#nam-portal, #nam-auth, #nam-track) select:focus-visible, :is(#nam-portal, #nam-auth, #nam-track) textarea:focus-visible { outline: none; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-input-text:hover { border-color: var(--nam-text-faint); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-input-text:focus, :is(#nam-portal, #nam-auth, #nam-track) input:focus, :is(#nam-portal, #nam-auth, #nam-track) select:focus, :is(#nam-portal, #nam-auth, #nam-track) textarea:focus { border-color: var(--nam-focus); box-shadow: 0 0 0 4px var(--nam-focus-ring); outline: none; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-cmd-trigger:hover { border-color: var(--nam-focus); box-shadow: 0 0 0 4px var(--nam-focus-ring); }
:is(#nam-portal, #nam-auth, #nam-track) :focus-visible { outline-color: var(--nam-focus); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-input-text:focus, :is(#nam-portal, #nam-auth, #nam-track) .nam-select-box:focus, :is(#nam-portal, #nam-auth, #nam-track) .nam-auth-input:focus { border-color: var(--nam-focus); box-shadow: 0 0 0 4px var(--nam-focus-ring); outline: none; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-auth-input:hover, :is(#nam-portal, #nam-auth, #nam-track) .nam-select-box:hover { border-color: var(--nam-text-faint); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-auth-input:focus-visible, :is(#nam-portal, #nam-auth, #nam-track) .nam-select-box:focus-visible { outline: none; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-addon:has(input:focus-visible), :is(#nam-portal, #nam-auth, #nam-track) .nam-pay-opt:has(input:focus-visible) { box-shadow: 0 0 0 4px var(--nam-focus-ring); }

/* کیف پول: ردیف کارت‌ها تمام‌عرض، گردش حساب و شارژ زیر آن */
:is(#nam-portal, #nam-auth, #nam-track) .nam-card-strip { margin-bottom: 4px; }
:is(#nam-portal, #nam-auth, #nam-track) #nam-cardform { margin: 0 0 14px; }

/* کلاس صفحه چاپ */
:is(#nam-portal, #nam-auth, #nam-track) .nam-pc { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 6px 0 0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pc-opt { position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: 3px; text-align: right; padding: 14px 16px; border-radius: 16px; border: 1.5px solid var(--nam-border-input); background: var(--nam-card-bg); cursor: pointer; transition: border-color .2s, background .2s, box-shadow .2s; min-width: 0; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pc-opt b { font-size: 14px; color: var(--nam-text-title); font-weight: 800; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pc-opt small { font-size: 12px; color: var(--nam-text-muted); line-height: 1.7; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pc-opt em { position: absolute; top: 12px; left: 12px; font-style: normal; font-size: 11px; font-weight: 800; padding: 2px 9px; border-radius: 999px; background: var(--nam-surface-3); color: var(--nam-text-muted); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pc-opt em.is-up { background: var(--nam-amber-soft); color: var(--nam-amber-ink); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pc-opt:hover { border-color: var(--nam-text-faint); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pc-opt.is-on { border-color: var(--nam-primary-solid); background: var(--nam-primary-light); box-shadow: 0 0 0 4px var(--nam-focus-ring); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pc-pick { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; animation: namPaneIn .25s cubic-bezier(.2,.7,.2,1) both; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pc-pick[hidden] { display: none; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pc-chip { display: inline-flex; align-items: center; gap: 10px; padding: 9px 14px; border-radius: 12px; border: 1.5px solid var(--nam-border); background: var(--nam-card-bg); color: var(--nam-text); font-size: 13px; font-weight: 700; cursor: pointer; transition: all .2s; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pc-chip em { font-style: normal; font-size: 11px; font-weight: 800; color: var(--nam-amber-ink); background: var(--nam-amber-soft); padding: 1px 8px; border-radius: 999px; }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pc-chip:hover { border-color: var(--nam-text-faint); }
:is(#nam-portal, #nam-auth, #nam-track) .nam-pc-chip.is-on { border-color: var(--nam-primary-solid); background: var(--nam-primary-light); color: var(--nam-text-title); }
@media (max-width: 560px) { :is(#nam-portal, #nam-auth, #nam-track) .nam-pc { grid-template-columns: 1fr; } }

/* ---------- انتخابگر کارتی (روزنامه / سایت / کانال) ---------- */
#nam-portal .nam-pick { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 10px; }
#nam-portal .nam-pick-tile {
    position: relative; display: flex; align-items: center; gap: 12px; text-align: right; cursor: pointer;
    background: var(--nam-surface-2); border: 1.5px solid var(--nam-border); border-radius: 14px; padding: 12px 14px;
    font-family: inherit; color: var(--nam-text); transition: border-color .15s, background .15s, box-shadow .15s;
}
#nam-portal .nam-pick-tile:hover { border-color: var(--nam-primary); }
#nam-portal .nam-pick-tile .nam-pick-ico { flex: none; width: 38px; height: 38px; border-radius: 11px; display: grid; place-items: center; background: var(--nam-primary-light); color: var(--nam-primary); }
#nam-portal .nam-pick-tile strong { display: block; font-size: 13.5px; font-weight: 800; color: var(--nam-text-title); line-height: 1.4; }
#nam-portal .nam-pick-tile small { display: block; font-size: 11.5px; color: var(--nam-text-muted); line-height: 1.5; }
#nam-portal .nam-pick-tile .nam-pick-tick { margin-inline-start: auto; flex: none; width: 22px; height: 22px; border-radius: 50%; border: 1.5px solid var(--nam-border-input); display: grid; place-items: center; color: transparent; }
#nam-portal .nam-pick-tile .nam-pick-tick svg { width: 13px; height: 13px; }
#nam-portal .nam-pick-tile.is-on { border-color: var(--nam-primary); background: var(--nam-primary-light); box-shadow: 0 0 0 3px var(--nam-primary-ring); }
#nam-portal .nam-pick-tile.is-on .nam-pick-tick { background: var(--nam-primary-solid); border-color: var(--nam-primary-solid); color: #fff; }
#nam-portal .nam-pick-tile.is-feat {
    grid-column: 1 / -1; padding: 16px 18px; border-color: var(--nam-amber); color: #fff;
    background: linear-gradient(135deg, #12302B, #1A433C 60%, #226356);
}
#nam-portal .nam-pick-tile.is-feat strong { color: #fff; font-size: 15px; }
#nam-portal .nam-pick-tile.is-feat small { color: rgba(255,255,255,.78); }
#nam-portal .nam-pick-tile.is-feat .nam-pick-ico { background: rgba(231,176,74,.2); color: #F2CC85; width: 44px; height: 44px; }
#nam-portal .nam-pick-tile.is-feat::before { content: "پیشنهاد ویژه"; position: absolute; top: -9px; inset-inline-start: 16px; background: var(--nam-amber); color: #2b1d00; font-size: 10.5px; font-weight: 800; padding: 2px 9px; border-radius: 99px; }
#nam-portal .nam-pick-tile.is-feat.is-on { border-color: var(--nam-amber); box-shadow: 0 0 0 3px var(--nam-amber-soft); }
#nam-portal .nam-pick-tile.is-feat .nam-pick-tick { border-color: rgba(255,255,255,.5); }
#nam-portal .nam-pick-tile.is-feat.is-on .nam-pick-tick { background: var(--nam-amber); border-color: var(--nam-amber); color: #2b1d00; }
#nam-portal select.nam-picked { display: none; }

/* ---------- مدیریت رسانه‌ها ---------- */
#nam-portal .nam-media-row { display: flex; align-items: center; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--nam-border); }
#nam-portal .nam-media-row .nam-media-ico { flex: none; width: 38px; height: 38px; border-radius: 11px; display: grid; place-items: center; background: var(--nam-primary-light); color: var(--nam-primary); }
#nam-portal .nam-media-row-info { flex: 1; min-width: 0; }
#nam-portal .nam-media-row-info strong { display: block; font-size: 13.5px; color: var(--nam-text-title); }
#nam-portal .nam-media-row-info small { color: var(--nam-text-muted); font-size: 11.5px; }
#nam-portal .nam-media-row.is-off { opacity: .55; }
#nam-portal .nam-media-form { margin-top: 16px; padding: 14px; border-radius: 14px; background: var(--nam-surface-2); border: 1px dashed var(--nam-border-input); display: grid; gap: 10px; }
#nam-portal .nam-media-form-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 10px; align-items: center; }

/* ریسپانسیو: سربرگ روی عرض کم زیر هم می‌شود */
@media (max-width: 900px) {
  #nam-portal .nam-topbar { flex-direction: column; align-items: stretch; flex-wrap: nowrap; gap: 10px; }
  #nam-portal .nam-topbar-title { width: 100%; min-width: 0; }
  #nam-portal .nam-topbar-title h1 { font-size: clamp(19px, 6vw, 26px); overflow-wrap: anywhere; }
  #nam-portal .nam-topbar-actions { width: 100%; justify-content: flex-start; min-width: 0; }
  #nam-portal .nam-cmd-trigger { flex: none; }
  #nam-portal .nam-wallet-pill { min-width: 0; max-width: 100%; flex: 1 1 auto; }
}
@media (max-width: 380px) {
  #nam-portal .nam-wallet-pill { flex-wrap: wrap; }
  #nam-portal { padding-inline: 10px; }
}

/* ---------- نوع حساب در ثبت‌نام ---------- */
#nam-auth .nam-acct { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
#nam-auth .nam-acct-opt { text-align: right; cursor: pointer; font-family: inherit; padding: 10px 12px; border-radius: 12px; border: 1.5px solid var(--nam-border-input); background: var(--nam-card-bg); color: var(--nam-text); }
#nam-auth .nam-acct-opt strong { display: block; font-size: 12.5px; font-weight: 800; color: var(--nam-text-title); line-height: 1.4; }
#nam-auth .nam-acct-opt small { font-size: 11px; color: var(--nam-text-muted); }
#nam-auth .nam-acct-opt.is-on { border-color: var(--nam-primary); background: var(--nam-primary-light); box-shadow: 0 0 0 3px var(--nam-primary-ring); }
@media (max-width: 380px) { #nam-auth .nam-acct { grid-template-columns: 1fr; } }

/* ---------- فیلدهای اختصاصی رسانه ---------- */
#nam-portal .nam-xf-box, #nam-auth .nam-xf-box { grid-column: 1 / -1; }
.nam-xf-box .nam-xf:not([hidden]) { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 10px; }
.nam-xf-box .nam-xf-lbl { display: grid; gap: 5px; font-size: 11.5px; font-weight: 700; color: var(--nam-text-muted); }
#nam-auth .nam-xf-box .nam-xf:not([hidden]) { grid-template-columns: 1fr; }

/* ---------- پیامک‌ها ---------- */
#nam-portal .nam-sms-row { display: grid; grid-template-columns: auto minmax(0, 1fr) minmax(120px, 200px); gap: 12px; align-items: center; padding: 12px 0; border-bottom: 1px solid var(--nam-border); }
#nam-portal .nam-sms-info strong { display: block; font-size: 13px; color: var(--nam-text-title); }
#nam-portal .nam-sms-info small { color: var(--nam-text-muted); font-size: 11.5px; }
#nam-portal .nam-switch { position: relative; display: inline-block; width: 40px; height: 22px; }
#nam-portal .nam-switch input { position: absolute; opacity: 0; inset: 0; width: 100%; height: 100%; margin: 0; cursor: pointer; z-index: 1; }
#nam-portal .nam-switch i { position: absolute; inset: 0; border-radius: 99px; background: var(--nam-border-input); transition: background .15s; }
#nam-portal .nam-switch i::after { content: ""; position: absolute; top: 3px; inset-inline-start: 3px; width: 16px; height: 16px; border-radius: 50%; background: #fff; transition: transform .15s; }
#nam-portal .nam-switch input:checked + i { background: var(--nam-primary-solid); }
#nam-portal .nam-switch input:checked + i::after { transform: translateX(-18px); }
@media (max-width: 640px) { #nam-portal .nam-sms-row { grid-template-columns: auto minmax(0, 1fr); } #nam-portal .nam-sms-code { grid-column: 1 / -1; } }

/* ریسپانسیو ایمن: سربرگ در هر عرض کم نشکند */
#nam-portal .nam-topbar { flex-wrap: wrap; }
#nam-portal .nam-topbar-title { flex: 1 1 240px; min-width: min(100%, 240px); }

#nam-portal .nam-comm-note { margin-top: 8px; font-size: 12.5px; color: #F2CC85; background: rgba(231,176,74,.12); border: 1px solid rgba(231,176,74,.35); border-radius: 10px; padding: 8px 12px; max-width: 60ch; }
#nam-portal .nam-comm-sel { display: grid; gap: 2px; font-size: 10.5px; color: var(--nam-text-muted); }
#nam-portal .nam-comm-sel select { font-family: inherit; font-size: 12px; padding: 5px 8px; border-radius: 8px; border: 1px solid var(--nam-border-input); background: var(--nam-card-bg); color: var(--nam-text); }

/* اصلاح: در حالت ستونی ارتفاع عنوان به flex-basis وابسته نشود */
@media (max-width: 900px) {
  #nam-portal .nam-topbar-title { flex: 0 0 auto; min-width: 0; }
  #nam-portal .nam-topbar-actions { flex-wrap: wrap; }
  #nam-portal .nam-wallet-pill { flex-wrap: wrap; justify-content: space-between; row-gap: 6px; }
}

/* ---------- منوی «بیشتر» موبایل ---------- */
#nam-portal .nam-more { position: fixed; inset: 0; z-index: 2147483000; }
#nam-portal .nam-more[hidden] { display: none; }
#nam-portal .nam-more-bg { position: absolute; inset: 0; background: var(--nam-overlay); }
#nam-portal .nam-more-sheet { position: absolute; inset-inline: 0; bottom: 0; max-height: 82vh; overflow-y: auto; background: var(--nam-card-bg); border-radius: 22px 22px 0 0; padding: 8px 16px calc(20px + env(safe-area-inset-bottom, 0px)); box-shadow: 0 -20px 50px -20px rgba(0,0,0,.5); animation: nam-more-up .2s ease-out; }
@keyframes nam-more-up { from { transform: translateY(30px); opacity: 0; } to { transform: none; opacity: 1; } }
#nam-portal .nam-more-grip { width: 40px; height: 4px; border-radius: 3px; background: var(--nam-border-input); margin: 4px auto 10px; }
#nam-portal .nam-more-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 8px; }
#nam-portal .nam-more-head strong { font-size: 15px; color: var(--nam-text-title); }
#nam-portal .nam-more-tools { display: flex; gap: 8px; }
#nam-portal .nam-more-label { font-size: 11.5px; font-weight: 800; color: var(--nam-text-muted); margin: 12px 2px 6px; }
#nam-portal .nam-more-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 8px; }
#nam-portal .nam-more-item { position: relative; display: flex; align-items: center; gap: 10px; text-align: right; font-family: inherit; font-size: 13px; font-weight: 700; padding: 12px; border-radius: 14px; border: 1.5px solid var(--nam-border); background: var(--nam-surface-2); color: var(--nam-text-title); min-height: 48px; }
#nam-portal .nam-more-item svg { width: 19px; height: 19px; flex: none; color: var(--nam-primary); }
#nam-portal .nam-more-item em { margin-inline-start: auto; font-style: normal; font-size: 10.5px; background: var(--nam-amber-soft); color: var(--nam-amber-ink); border-radius: 99px; padding: 1px 7px; }
#nam-portal .nam-more-item.is-on { border-color: var(--nam-primary); background: var(--nam-primary-light); }
body.nam-more-lock { overflow: hidden; }
@media (min-width: 1026px) { #nam-portal .nam-more { display: none; } }

/* سربرگ موبایل: کیف پول تمام‌عرض، جستجو و آیکن‌ها زیرش در یک ردیف */
@media (max-width: 900px) {
  #nam-portal .nam-topbar-actions { flex-wrap: wrap; gap: 8px; }
  #nam-portal .nam-wallet-pill { order: -1; flex: 1 1 100%; }
  #nam-portal .nam-topbar-actions .nam-cmd-trigger { flex: 1 1 auto; justify-content: flex-start; }
}

/* ---------- آگهی ردشده: دلیل و بازگشت وجه ---------- */
#nam-portal .nam-reject { display: grid; gap: 3px; padding: 9px 12px; border-radius: 12px; background: var(--nam-red-soft); border: 1px solid color-mix(in srgb, var(--nam-red) 35%, transparent); min-width: 0; }
#nam-portal .nam-reject b { font-size: 11px; color: var(--nam-red); }
#nam-portal .nam-reject span { font-size: 12.5px; color: var(--nam-text-title); line-height: 1.6; }
#nam-portal .nam-reject em { font-style: normal; font-size: 11.5px; font-weight: 800; color: var(--nam-green); }
#nam-portal .nam-ot { min-width: 210px; }
#nam-portal .nam-ot-step em { white-space: normal; text-align: center; line-height: 1.35; font-size: 9.5px; max-width: 52px; }

/* افر لحظه‌ای */
#nam-portal .nam-offer{display:flex;align-items:center;gap:12px;margin-top:12px;padding:10px 12px;border-radius:14px;background:linear-gradient(135deg,rgba(232,176,75,.22),rgba(232,176,75,.08));border:1px dashed rgba(232,176,75,.6);color:inherit}
#nam-portal .nam-offer[hidden]{display:none}
#nam-portal .nam-offer>div{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
#nam-portal .nam-offer small{opacity:.8;font-size:12px}
#nam-portal .nam-offer-pct{flex:none;min-width:48px;height:48px;border-radius:50%;display:grid;place-items:center;font-weight:800;background:#e8b04b;color:#2a1c00}
#nam-portal .nam-offer.is-nudge{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.25)}
#nam-portal .nam-pick-off{position:absolute;top:8px;left:8px;font-style:normal;font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px;background:#e8b04b;color:#2a1c00}
#nam-portal .nam-pick-tile{position:relative}
@media(max-width:560px){#nam-portal .nam-offer{flex-wrap:wrap}#nam-portal .nam-offer .nam-btn{width:100%}}

/* امکانات رسانه */
#nam-portal .nam-media-row{flex-wrap:wrap}
#nam-portal .nam-perm{flex:1 1 100%;display:flex;flex-direction:column;gap:8px;margin-top:6px;padding-top:10px;border-top:1px dashed var(--nam-border-input)}
#nam-portal .nam-perm-sw,#nam-portal .nam-perm-br{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
#nam-portal .nam-perm-chk{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;padding:5px 11px;border-radius:999px;border:1px solid var(--nam-border-input);cursor:pointer}
#nam-portal .nam-perm-chk.is-ro{opacity:.7;cursor:default}
#nam-portal .nam-perm-chk input{accent-color:#1f6f5c}
#nam-portal .nam-perm-owner,#nam-portal .nam-perm-add{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap}
#nam-portal .nam-perm input.nam-input-text{height:34px;min-height:0;padding:0 10px;font-size:13px;width:150px}
#nam-portal .nam-perm-add input[type=number]{width:70px}
#nam-portal .nam-chip-br{display:inline-flex;align-items:center;gap:6px;padding:4px 6px 4px 10px;border-radius:999px;font-size:12px;font-weight:700;background:rgba(31,111,92,.12)}
#nam-portal .nam-chip-br button{border:0;background:transparent;cursor:pointer;font-size:15px;line-height:1;color:inherit}
#nam-portal .nam-perm-none{opacity:.65}
#nam-portal .nam-pick-star{position:absolute;top:8px;left:42px;font-style:normal;font-size:11px;font-weight:800;padding:2px 8px;border-radius:999px;background:#e8b04b;color:#2a1c00}

#nam-portal .nam-dash-st{margin:0 0 12px;flex-wrap:wrap}
#nam-portal .nam-dash-st button b{margin-inline-start:4px}
#nam-portal .nam-dash-grid.nam-dash-one{grid-template-columns:minmax(0,1fr)}

@media (max-width: 860px) { #nam-portal .nam-dash-grid { grid-template-columns: minmax(0, 1fr); } }
