/* ایران نوین — امکانات صنفی */
:root { --ind-ok: #059669; --ind-err: #dc2626; --ind-warn: #d97706; --ind-r: var(--inn-radius, 10px); }
.inn-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.inn-bk [hidden], .inn-ind-form [hidden], .inn-gold-calc [hidden], .inn-pcb [hidden], .inn-quote [hidden], .inn-compare [hidden] { display: none !important; }
.inn-noscroll { overflow: hidden; }
.inn-ind-empty { padding: 18px; text-align: center; color: #6b7280; background: var(--inn-alt-bg, #f8fafc); border-radius: var(--ind-r); margin: 0; }
.inn-ind-hint { font-size: 13px; color: #6b7280; margin: 8px 0 0; line-height: 1.9; }
.inn-ind-badge { --c: #64748b; display: inline-flex; align-items: center; padding: 2px 10px; border-radius: 99px; font-size: 12px; font-weight: 600; line-height: 1.8; color: var(--c); background: color-mix(in srgb, var(--c) 12%, transparent); white-space: nowrap; }

/* ---------- فرم‌ها ---------- */
.inn-ind-form { background: #fff; border: 1px solid var(--inn-border, #e5e7eb); border-radius: calc(var(--ind-r) + 4px); padding: clamp(16px, 3vw, 28px); margin: 0 0 24px; display: grid; gap: 14px; }
.inn-ind-form h3, .inn-ind-form h4 { margin: 0; font-size: 1.15em; }
.inn-ind-form label { display: grid; gap: 6px; font-size: 14px; font-weight: 600; color: var(--inn-heading, #111827); }
.inn-ind-form input:not([type=checkbox]):not([type=radio]):not([type=range]), .inn-ind-form select, .inn-ind-form textarea { width: 100%; font: inherit; font-weight: 400; padding: 10px 12px; border: 1px solid var(--inn-border, #d1d5db); border-radius: var(--ind-r); background: #fff; color: var(--inn-text, #111); transition: border-color .15s, box-shadow .15s; min-height: 44px; box-sizing: border-box; }
.inn-ind-form input:focus, .inn-ind-form select:focus, .inn-ind-form textarea:focus { outline: none; border-color: var(--inn-primary); box-shadow: 0 0 0 3px color-mix(in srgb, var(--inn-primary) 18%, transparent); }
.inn-ind-form .req { color: var(--ind-err); }
.inn-ind-form > .inn-btn, .inn-ind-form button[type=submit] { justify-self: start; min-height: 44px; }
.inn-ind-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 14px; }
.inn-ind-choices { border: 0; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 8px 18px; }
.inn-ind-choices legend { font-weight: 600; font-size: 14px; margin-bottom: 6px; }
.inn-ind-choices label { display: flex; align-items: center; gap: 6px; font-weight: 400; }
.inn-ind-msg:empty { display: none; }
.inn-ind-msg { padding: 10px 14px; border-radius: var(--ind-r); font-size: 14px; line-height: 1.9; }
.inn-ind-msg.is-ok { background: #ecfdf5; color: #065f46; }
.inn-ind-msg.is-err { background: #fef2f2; color: #991b1b; }
.inn-btn.is-loading { opacity: .7; pointer-events: none; position: relative; }
.inn-btn.is-loading:after { content: ""; width: 14px; height: 14px; border: 2px solid currentColor; border-inline-end-color: transparent; border-radius: 50%; display: inline-block; margin-inline-start: 8px; animation: inn-spin .7s linear infinite; vertical-align: -2px; }
@keyframes inn-spin { to { transform: rotate(360deg); } }
.inn-ind-toast { position: fixed; bottom: 90px; left: 50%; transform: translate(-50%, 20px); background: #111827; color: #fff; padding: 10px 18px; border-radius: 99px; font-size: 14px; opacity: 0; pointer-events: none; transition: .25s; z-index: 99999; }
.inn-ind-toast.is-on { opacity: 1; transform: translate(-50%, 0); }
.inn-ind-modal { position: fixed; inset: 0; background: rgba(15, 23, 42, .6); display: grid; place-items: center; z-index: 99998; padding: 16px; }
.inn-ind-modal__box { background: #fff; border-radius: 14px; padding: 18px; width: min(560px, 100%); max-height: 92vh; display: grid; gap: 12px; position: relative; }
.inn-ind-modal__box.is-wide { width: min(980px, 100%); height: 88vh; grid-template-rows: 1fr auto; }
.inn-ind-modal__box iframe { width: 100%; height: 100%; border: 0; border-radius: 8px; background: #f3f4f6; }
.inn-ind-modal__x { position: absolute; top: -14px; inset-inline-end: -14px; width: 36px; height: 36px; border-radius: 50%; border: 0; background: #fff; box-shadow: 0 4px 14px rgba(0,0,0,.2); font-size: 22px; cursor: pointer; line-height: 1; }

/* ---------- پیگیری ---------- */
.inn-track-card { border: 1px solid var(--inn-border, #e5e7eb); border-radius: calc(var(--ind-r) + 4px); padding: clamp(16px, 3vw, 24px); background: #fff; display: grid; gap: 18px; }
.inn-track-card__head { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.inn-track-card__head small { display: block; color: #6b7280; }
.inn-track-card__head b { font-size: 1.2em; letter-spacing: 1px; }
.inn-steps { list-style: none; margin: 0; padding: 0; display: flex; counter-reset: s; overflow-x: auto; }
.inn-steps li { flex: 1 0 80px; text-align: center; position: relative; font-size: 12.5px; color: #9ca3af; padding-top: 30px; }
.inn-steps li span { position: absolute; top: 0; left: 50%; transform: translateX(-50%); width: 22px; height: 22px; border-radius: 50%; background: #e5e7eb; z-index: 1; }
.inn-steps li:before { content: ""; position: absolute; top: 10px; right: 50%; width: 100%; height: 3px; background: #e5e7eb; }
.inn-steps li:first-child:before { display: none; }
.inn-steps li em { font-style: normal; display: block; font-weight: 600; }
.inn-steps li small { display: block; font-size: 11px; }
.inn-steps li.is-done, .inn-steps li.is-current { color: var(--inn-heading, #111); }
.inn-steps li.is-done span, .inn-steps li.is-done:before, .inn-steps li.is-current:before { background: var(--inn-primary); }
.inn-steps li.is-current span { background: #fff; box-shadow: inset 0 0 0 6px var(--inn-primary); }
.inn-track-card__data, .inn-bk-card dl, .inn-wr-card dl, .inn-bk__summary dl, .inn-course__box dl { margin: 0; display: grid; gap: 0; }
.inn-track-card__data div, .inn-bk-card dl div, .inn-wr-card dl div, .inn-bk__summary dl div, .inn-course__box dl div { display: flex; justify-content: space-between; gap: 12px; padding: 9px 0; border-bottom: 1px dashed var(--inn-border, #e5e7eb); font-size: 14px; }
.inn-track-card__data div:last-child, .inn-bk-card dl div:last-child, .inn-wr-card dl div:last-child, .inn-course__box dl div:last-child { border-bottom: 0; }
.inn-track-card__data dt, .inn-bk-card dt, .inn-wr-card dt, .inn-bk__summary dt, .inn-course__box dt { color: #6b7280; flex-shrink: 0; }
.inn-track-card__data dd, .inn-bk-card dd, .inn-wr-card dd, .inn-bk__summary dd, .inn-course__box dd { margin: 0; font-weight: 600; text-align: end; white-space: pre-line; }
.inn-track-card__data .is-amount dd { color: var(--inn-primary); font-size: 1.1em; }
.inn-track-card__notes h4 { margin: 0 0 8px; font-size: 15px; }
.inn-track-card__notes p { background: var(--inn-alt-bg, #f8fafc); padding: 10px 14px; border-radius: var(--ind-r); margin: 0 0 8px; font-size: 14px; }
.inn-track-card__notes small { display: block; color: #9ca3af; font-size: 12px; }
.inn-rp-answer { background: #fffbeb; border-radius: var(--ind-r); padding: 14px; display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.inn-rp-answer p { margin: 0; width: 100%; font-weight: 600; color: #92400e; }

/* ---------- طلا ---------- */
.inn-gold-ticker { background: #1c1917; color: #fef3c7; overflow: hidden; font-size: 13.5px; height: 38px; display: flex; align-items: center; position: relative; z-index: 3; }
.inn-gt__track { display: flex; width: max-content; animation: inn-ticker 45s linear infinite; }
.inn-gold-ticker:hover .inn-gt__track { animation-play-state: paused; }
.inn-gt__row { display: flex; gap: 34px; padding-inline-end: 34px; }
.inn-gt__item { white-space: nowrap; display: inline-flex; gap: 6px; align-items: center; transition: background .4s; padding: 2px 6px; border-radius: 6px; }
.inn-gt__item b { color: #fbbf24; font-weight: 600; }
.inn-gt__item.is-flash, .inn-gold-board tr.is-flash { background: rgba(251, 191, 36, .25); }
@keyframes inn-ticker { from { transform: translateX(0); } to { transform: translateX(50%); } }
@media (prefers-reduced-motion: reduce) { .inn-gt__track { animation: none; } .inn-gold-ticker { overflow-x: auto; } }
.inn-gd { font-size: 12px; font-weight: 600; white-space: nowrap; unicode-bidi: isolate; }
.inn-gd.is-up { color: #16a34a; } .inn-gd.is-down { color: #dc2626; } .inn-gd.is-flat { color: #9ca3af; }
.inn-gold-ticker .inn-gd.is-up { color: #4ade80; } .inn-gold-ticker .inn-gd.is-down { color: #f87171; }
.inn-gold-board { border: 1px solid var(--inn-border, #e5e7eb); border-radius: calc(var(--ind-r) + 6px); overflow: hidden; background: #fff; margin: 0 0 24px; }
.inn-gold-board__head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px; padding: 16px 20px; background: linear-gradient(135deg, #1c1917, #44403c); color: #fff; }
.inn-gold-board__head h3 { margin: 0; color: #fbbf24; font-size: 1.15em; }
.inn-gold-board__time { font-size: 13px; opacity: .85; }
.inn-gold-board__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); }
.inn-gold-board__group { padding: 14px 20px 18px; border-inline-start: 1px solid var(--inn-border, #e5e7eb); }
.inn-gold-board__group:first-child { border-inline-start: 0; }
.inn-gold-board__group h4 { margin: 0 0 6px; font-size: 14px; color: #a16207; }
.inn-gold-board table { width: 100%; border-collapse: collapse; margin: 0; }
.inn-gold-board th, .inn-gold-board td { padding: 9px 4px; border: 0; border-bottom: 1px solid var(--inn-border, #f1f5f9); text-align: start; font-size: 14px; background: none; }
.inn-gold-board th { font-weight: 500; color: #44403c; }
.inn-gold-board td.inn-gt__v { font-weight: 700; color: var(--inn-heading, #111); text-align: end; white-space: nowrap; }
.inn-gold-board td:last-child { text-align: end; width: 76px; }
.inn-gold-chart { margin: 0 0 24px; border: 1px solid var(--inn-border, #e5e7eb); border-radius: calc(var(--ind-r) + 4px); padding: 16px; background: #fff; --gc: #16a34a; }
.inn-gold-chart.is-down { --gc: #dc2626; }
.inn-gold-chart figcaption { display: flex; justify-content: space-between; align-items: center; gap: 8px; margin-bottom: 10px; }
.inn-gold-chart h4 { margin: 0; font-size: 15px; }
.inn-gold-chart svg { width: 100%; height: 200px; display: block; }
.inn-gc__line { fill: none; stroke: var(--gc); stroke-width: 2.5; stroke-linejoin: round; }
.inn-gc__area { fill: var(--gc); opacity: .1; }
.inn-gc__legend { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 6px; font-size: 12px; color: #6b7280; margin-top: 8px; }
.inn-gold-calc { border: 1px solid var(--inn-border, #e5e7eb); border-radius: calc(var(--ind-r) + 6px); overflow: hidden; background: #fff; margin: 0 0 24px; }
.inn-gold-calc__tabs { display: flex; background: var(--inn-alt-bg, #f8fafc); border-bottom: 1px solid var(--inn-border, #e5e7eb); }
.inn-gold-calc__tabs button { flex: 1; border: 0; background: none; padding: 14px; font: inherit; font-weight: 600; cursor: pointer; color: #6b7280; border-bottom: 3px solid transparent; }
.inn-gold-calc__tabs button.is-active { color: var(--inn-heading, #111); border-bottom-color: var(--inn-primary); background: #fff; }
.inn-gold-calc__body { padding: clamp(16px, 3vw, 24px); display: grid; gap: 14px; }
.inn-gold-calc label { display: grid; gap: 6px; font-size: 14px; font-weight: 600; }
.inn-gold-calc input, .inn-gold-calc select { font: inherit; padding: 10px 12px; border: 1px solid var(--inn-border, #d1d5db); border-radius: var(--ind-r); min-height: 44px; width: 100%; box-sizing: border-box; background: #fff; }
.inn-gold-calc__out { margin: 0; background: var(--inn-alt-bg, #f8fafc); border-radius: var(--ind-r); padding: 6px 16px; }
.inn-gold-calc__out div { display: flex; justify-content: space-between; padding: 8px 0; border-bottom: 1px dashed var(--inn-border, #e5e7eb); font-size: 14px; }
.inn-gold-calc__out dd { margin: 0; font-weight: 600; }
.inn-gold-calc__out .is-total { border: 0; font-size: 1.15em; }
.inn-gold-calc__out .is-total dd { color: var(--inn-primary); font-weight: 800; }
.inn-buyback__est { background: #fffbeb; color: #78350f; padding: 12px 16px; border-radius: var(--ind-r); display: flex; justify-content: space-between; align-items: center; }
.inn-buyback__est b { font-size: 1.15em; }

/* ---------- مشخصات فنی ---------- */
.inn-specs-table { display: grid; gap: 22px; }
.inn-specs-table section { display: grid; grid-template-columns: 170px 1fr; gap: 16px; }
.inn-specs-table h4 { margin: 0; padding-top: 10px; font-size: 15px; color: var(--inn-heading, #111); }
.inn-specs-table dl { margin: 0; }
.inn-specs-table dl div { display: grid; grid-template-columns: minmax(120px, 34%) 1fr; gap: 14px; padding: 10px 0; border-bottom: 1px solid var(--inn-border, #eef0f3); font-size: 14px; }
.inn-specs-table dt { color: #6b7280; }
.inn-specs-table dd { margin: 0; font-weight: 500; }
@media (max-width: 640px) { .inn-specs-table section { grid-template-columns: 1fr; gap: 0; } }
.inn-keyspecs { display: flex; gap: 14px; align-items: flex-start; margin: 0 0 18px; }
.inn-keyspecs ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; font-size: 14px; flex: 1; }
.inn-keyspecs li { display: flex; gap: 8px; }
.inn-keyspecs li span { color: #6b7280; }
.inn-keyspecs li span:after { content: ":"; }
.inn-energy { --e: #16a34a; display: inline-flex; align-items: center; gap: 4px; background: var(--e); color: #fff; font: 700 12px/1 sans-serif; padding: 4px 10px 4px 14px; clip-path: polygon(0 0, calc(100% - 8px) 0, 100% 50%, calc(100% - 8px) 100%, 0 100%); direction: ltr; }
.inn-energy small { font: 500 9px/1 var(--inn-font-body, sans-serif); opacity: .9; }
.inn-energy.is-big { font-size: 18px; padding: 8px 18px 8px 14px; flex-direction: column; gap: 2px; }
.inn-energy-pos { position: absolute; bottom: 10px; inset-inline-start: 10px; z-index: 2; }
.inn-spec-filter { margin: 0 0 20px; border: 1px solid var(--inn-border, #e5e7eb); border-radius: var(--ind-r); background: #fff; }
.inn-spec-filter summary { padding: 12px 16px; cursor: pointer; font-weight: 600; display: flex; align-items: center; gap: 8px; list-style: none; }
.inn-spec-filter summary::-webkit-details-marker { display: none; }
.inn-spec-filter__n { background: var(--inn-primary); color: #fff; border-radius: 99px; padding: 0 8px; font-size: 12px; }
.inn-spec-filter__groups { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 14px; padding: 4px 16px 12px; }
.inn-spec-filter:not(.is-bar) .inn-spec-filter__groups { grid-template-columns: 1fr; }
.inn-spec-filter fieldset { border: 0; margin: 0; padding: 0; }
.inn-spec-filter legend { font-weight: 600; font-size: 13.5px; margin-bottom: 6px; }
.inn-spec-filter__opts { display: flex; flex-wrap: wrap; gap: 6px; max-height: 150px; overflow: auto; }
.inn-spec-filter__opts label { display: inline-flex; align-items: center; gap: 4px; border: 1px solid var(--inn-border, #e5e7eb); border-radius: 99px; padding: 4px 10px; font-size: 13px; cursor: pointer; }
.inn-spec-filter__opts label.is-on, .inn-spec-filter__opts label:has(input:checked) { border-color: var(--inn-primary); background: color-mix(in srgb, var(--inn-primary) 8%, #fff); }
.inn-spec-filter__opts input { margin: 0; accent-color: var(--inn-primary); }
.inn-spec-filter__opts small { color: #9ca3af; }
.inn-spec-filter__actions { padding: 0 16px 14px; display: flex; gap: 8px; flex-wrap: wrap; }

/* ---------- مقایسه ---------- */
.inn-cmp-pos { position: absolute; bottom: 10px; inset-inline-end: 10px; z-index: 3; }
.inn-cmp-btn { border: 0; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; gap: 6px; background: #fff; color: var(--inn-heading, #111); }
.inn-cmp-btn.inn-product__action { width: 36px; height: 36px; border-radius: 50%; box-shadow: 0 2px 8px rgba(0,0,0,.12); opacity: .92; }
.inn-cmp-btn.is-text { background: none; padding: 6px 0; font: inherit; font-size: 14px; color: #4b5563; margin: 0 0 12px; }
.inn-cmp-btn.is-on { color: #fff; background: var(--inn-primary); }
.inn-cmp-btn.is-text.is-on { background: none; color: var(--inn-primary); font-weight: 600; }
.inn-cmp-bar { position: fixed; bottom: 16px; left: 50%; transform: translateX(-50%); background: #111827; color: #fff; border-radius: 16px; padding: 10px 12px; display: flex; align-items: center; gap: 12px; z-index: 9990; box-shadow: 0 10px 30px rgba(0,0,0,.25); max-width: calc(100% - 24px); }
body:has(.inn-mobile-nav) .inn-cmp-bar { bottom: 84px; }
.inn-cmp-bar__items { display: flex; gap: 6px; }
.inn-cmp-bar__items span { position: relative; }
.inn-cmp-bar__items img { width: 42px; height: 42px; object-fit: cover; border-radius: 8px; background: #fff; display: block; }
.inn-cmp-bar__items button { position: absolute; top: -6px; inset-inline-end: -6px; width: 18px; height: 18px; border-radius: 50%; border: 0; background: #ef4444; color: #fff; font-size: 12px; line-height: 1; cursor: pointer; padding: 0; }
.inn-cmp-bar .inn-btn { padding: 8px 16px; min-height: 0; }
.inn-cmp-bar__clear { background: none; border: 0; color: #9ca3af; cursor: pointer; font: inherit; font-size: 13px; }
.inn-compare__tools { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 14px; }
.inn-compare__add { position: relative; flex: 0 1 320px; }
.inn-compare__add input { width: 100%; padding: 10px 14px; border: 1px solid var(--inn-border, #d1d5db); border-radius: var(--ind-r); font: inherit; }
.inn-compare__results { position: absolute; top: 100%; inset-inline: 0; background: #fff; border: 1px solid var(--inn-border, #e5e7eb); border-radius: var(--ind-r); box-shadow: 0 12px 28px rgba(0,0,0,.12); z-index: 20; max-height: 320px; overflow: auto; }
.inn-compare__results button { display: flex; gap: 10px; align-items: center; width: 100%; padding: 8px 12px; border: 0; background: none; cursor: pointer; text-align: start; font: inherit; }
.inn-compare__results button:hover { background: var(--inn-alt-bg, #f8fafc); }
.inn-compare__results img { width: 40px; height: 40px; object-fit: cover; border-radius: 6px; }
.inn-compare__results small { display: block; color: #6b7280; }
.inn-compare__results p { padding: 12px; margin: 0; color: #6b7280; }
.inn-compare__scroll { overflow-x: auto; border: 1px solid var(--inn-border, #e5e7eb); border-radius: var(--ind-r); }
.inn-compare__table { width: 100%; border-collapse: collapse; min-width: calc(150px + var(--n) * 200px); margin: 0; }
.inn-compare__table th, .inn-compare__table td { padding: 12px; border: 0; border-bottom: 1px solid var(--inn-border, #eef0f3); text-align: center; font-size: 14px; vertical-align: top; }
.inn-compare__table tbody th { text-align: start; color: #6b7280; font-weight: 500; width: 150px; position: sticky; inset-inline-start: 0; background: #fff; }
.inn-compare__group th { background: var(--inn-alt-bg, #f8fafc) !important; color: var(--inn-heading, #111) !important; font-weight: 700 !important; }
.inn-compare__product { position: relative; }
.inn-compare__product a:not(.inn-btn) { display: grid; gap: 8px; color: inherit; text-decoration: none; }
.inn-compare__product img { width: 140px; height: 140px; object-fit: contain; margin: 0 auto; }
.inn-compare__product .price { display: block; margin: 8px 0; font-weight: 700; }
.inn-compare__product .inn-btn { padding: 8px 14px; font-size: 13px; }
.inn-compare__remove { position: absolute; top: 8px; inset-inline-end: 8px; width: 28px; height: 28px; border-radius: 50%; border: 1px solid var(--inn-border, #e5e7eb); background: #fff; cursor: pointer; display: grid; place-items: center; }
.inn-compare tr.is-diff td { background: color-mix(in srgb, var(--inn-primary) 4%, #fff); }
.inn-compare.is-diff-only tr.is-same { display: none; }
.inn-compare__empty { text-align: center; padding: 48px 16px; display: grid; justify-items: center; gap: 10px; color: #6b7280; }
.inn-compare__empty h3 { margin: 0; color: var(--inn-heading, #111); }

/* ---------- اقساط و خدمات جانبی ---------- */
.inn-ins { border: 1px solid var(--inn-border, #e5e7eb); border-radius: var(--ind-r); margin: 0 0 18px; }
.inn-ins summary { padding: 12px 14px; cursor: pointer; display: flex; gap: 8px; align-items: center; font-size: 14px; list-style: none; }
.inn-ins summary::-webkit-details-marker { display: none; }
.inn-ins summary b { color: var(--inn-primary); }
.inn-ins[open] { padding-bottom: 12px; }
.inn-ins > .inn-ins-table, .inn-ins > p, .inn-ins > .inn-btn { margin-inline: 14px; }
.inn-ins > .inn-btn { margin-top: 10px; }
.inn-ins-table { width: calc(100% - 28px); border-collapse: collapse; font-size: 13.5px; margin-block: 0; }
.inn-ins-page .inn-ins-table { width: 100%; }
.inn-ins-table th, .inn-ins-table td { padding: 9px 8px; border: 0; border-bottom: 1px solid var(--inn-border, #eef0f3); text-align: start; }
.inn-ins-table thead th { color: #6b7280; font-weight: 500; font-size: 12.5px; }
.inn-addons { border: 1px dashed var(--inn-border, #d1d5db); border-radius: var(--ind-r); padding: 10px 14px; margin: 0 0 14px; width: 100%; }
.inn-addons legend { font-weight: 700; font-size: 14px; padding: 0 6px; }
.inn-addons label { display: flex; gap: 8px; align-items: center; padding: 6px 0; font-size: 14px; cursor: pointer; }
.inn-addons label span { flex: 1; }
.inn-addons label b { font-weight: 600; font-size: 13px; color: #4b5563; }
.inn-addons input { accent-color: var(--inn-primary); width: 18px; height: 18px; }
.inn-addons__sum { margin: 6px 0 0; font-size: 13px; font-weight: 600; color: var(--inn-primary); }
.inn-addons__sum:empty { display: none; }

/* ---------- گارانتی ---------- */
.inn-wr-card { display: flex; gap: 16px; border-radius: calc(var(--ind-r) + 4px); padding: 20px; border: 2px solid var(--ind-ok); background: #f0fdf4; margin-bottom: 24px; }
.inn-wr-card.is-expired { border-color: var(--ind-err); background: #fef2f2; }
.inn-wr-card > div:last-child { flex: 1; }
.inn-wr-card__icon { width: 56px; height: 56px; border-radius: 50%; display: grid; place-items: center; background: var(--ind-ok); color: #fff; flex-shrink: 0; }
.inn-wr-card.is-expired .inn-wr-card__icon { background: var(--ind-err); }
.inn-wr-card h4 { margin: 0 0 8px; }
.inn-wr-card .inn-btn { margin-top: 12px; }

/* ---------- اسمبل ---------- */
.inn-pcb { display: grid; grid-template-columns: 1fr 300px; gap: 20px; align-items: start; }
.inn-pcb__slots { display: grid; gap: 10px; }
.inn-pcb__slot { display: grid; grid-template-columns: 140px 1fr auto; gap: 14px; align-items: center; padding: 12px 14px; border: 1px solid var(--inn-border, #e5e7eb); border-radius: var(--ind-r); background: #fff; }
.inn-pcb__slot.is-picked { border-color: color-mix(in srgb, var(--inn-primary) 45%, #fff); }
.inn-pcb__label small { display: block; color: #9ca3af; font-size: 12px; }
.inn-pcb__pick { display: flex; gap: 10px; align-items: center; min-width: 0; font-size: 14px; }
.inn-pcb__pick img { width: 46px; height: 46px; object-fit: contain; border-radius: 6px; background: #f8fafc; flex-shrink: 0; }
.inn-pcb__pick span { display: grid; min-width: 0; }
.inn-pcb__pick a { color: inherit; text-decoration: none; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.inn-pcb__empty { color: #9ca3af; }
.inn-pcb__btns { display: flex; gap: 6px; align-items: center; }
.inn-pcb__btns .inn-btn { padding: 7px 14px; min-height: 0; font-size: 13px; }
.inn-pcb__clear { border: 0; background: #fee2e2; color: #b91c1c; width: 30px; height: 30px; border-radius: 50%; cursor: pointer; display: grid; place-items: center; }
.inn-pcb__sum { position: sticky; top: 90px; border: 1px solid var(--inn-border, #e5e7eb); border-radius: calc(var(--ind-r) + 4px); padding: 18px; background: #fff; display: grid; gap: 10px; }
.inn-pcb__sum h4 { margin: 0; }
.inn-pcb__sum dl { margin: 0; }
.inn-pcb__sum dl div { display: flex; justify-content: space-between; padding: 8px 0; border-bottom: 1px dashed var(--inn-border, #e5e7eb); font-size: 14px; }
.inn-pcb__sum dd { margin: 0; font-weight: 600; }
.inn-pcb__sum .is-total { border: 0; font-size: 1.1em; }
.inn-pcb__sum .is-total dd { color: var(--inn-primary); font-weight: 800; }
.inn-pcb__modal { position: fixed; inset: 0; background: rgba(15,23,42,.55); z-index: 99990; display: grid; place-items: center; padding: 16px; }
.inn-pcb__modal[hidden] { display: none; }
.inn-pcb__panel { background: #fff; border-radius: 16px; width: min(640px, 100%); max-height: 86vh; display: grid; grid-template-rows: auto auto 1fr; overflow: hidden; }
.inn-pcb__panel header { display: flex; justify-content: space-between; align-items: center; padding: 14px 18px; border-bottom: 1px solid var(--inn-border, #e5e7eb); }
.inn-pcb__x { border: 0; background: none; cursor: pointer; }
.inn-pcb__tools { display: flex; gap: 8px; padding: 12px 18px; }
.inn-pcb__tools input { flex: 1; }
.inn-pcb__tools input, .inn-pcb__tools select { padding: 9px 12px; border: 1px solid var(--inn-border, #d1d5db); border-radius: var(--ind-r); font: inherit; }
.inn-pcb__list { list-style: none; margin: 0; padding: 0 10px 12px; overflow: auto; }
.inn-pcb__list button { display: grid; grid-template-columns: 52px 1fr auto; gap: 12px; align-items: center; width: 100%; padding: 8px; border: 0; background: none; border-radius: 10px; cursor: pointer; text-align: start; font: inherit; font-size: 14px; }
.inn-pcb__list button:hover, .inn-pcb__list button:focus-visible { background: var(--inn-alt-bg, #f8fafc); }
.inn-pcb__list img { width: 52px; height: 52px; object-fit: contain; }
.inn-pcb__loading { padding: 24px; text-align: center; color: #6b7280; }
@media (max-width: 900px) { .inn-pcb { grid-template-columns: 1fr; } .inn-pcb__sum { position: static; } }
@media (max-width: 560px) { .inn-pcb__slot { grid-template-columns: 1fr auto; } .inn-pcb__pick { grid-column: 1 / -1; grid-row: 2; } }

/* ---------- خبرم کن ---------- */
.inn-notify { background: var(--inn-alt-bg, #f8fafc); border: 0; padding: 16px; gap: 10px; }
.inn-notify p { margin: 0; display: grid; gap: 2px; }
.inn-notify p b { display: flex; align-items: center; gap: 6px; }
.inn-notify small { color: #6b7280; }
.inn-notify__row { display: flex; gap: 8px; }
.inn-notify__row input { flex: 1; }

/* ---------- نوبت‌دهی ---------- */
.inn-bk { border: 1px solid var(--inn-border, #e5e7eb); border-radius: calc(var(--ind-r) + 6px); background: #fff; padding: clamp(16px, 3vw, 28px); margin: 0 0 24px; display: grid; gap: 18px; scroll-margin-top: 90px; }
.inn-bk h3 { margin: 0 0 12px; font-size: 1.15em; outline: none; }
.inn-bk__steps { list-style: none; display: flex; gap: 6px; margin: 0; padding: 0; counter-reset: b; }
.inn-bk__steps li { flex: 1; text-align: center; font-size: 13px; color: #9ca3af; padding-top: 10px; border-top: 4px solid #e5e7eb; counter-increment: b; }
.inn-bk__steps li:before { content: counter(b, persian) ". "; }
.inn-bk__steps li.is-done { border-color: color-mix(in srgb, var(--inn-primary) 45%, #fff); color: #4b5563; }
.inn-bk__steps li.is-current { border-color: var(--inn-primary); color: var(--inn-heading, #111); font-weight: 700; }
.inn-bk__group { margin-bottom: 14px; }
.inn-bk__group h4 { margin: 0 0 8px; font-size: 14px; color: #6b7280; }
.inn-bk__services .inn-bk__group > *:not(h4), .inn-bk__staff { display: flex; }
.inn-bk__group { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 10px; }
.inn-bk__group h4 { grid-column: 1 / -1; }
.inn-bk__staff { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 10px; }
.inn-bk__opt { display: flex; align-items: center; gap: 12px; border: 1.5px solid var(--inn-border, #e5e7eb); background: #fff; border-radius: var(--ind-r); padding: 12px 14px; cursor: pointer; font: inherit; text-align: start; transition: .15s; min-height: 64px; color: inherit; }
.inn-bk__opt:hover, .inn-bk__opt:focus-visible { border-color: var(--inn-primary); box-shadow: 0 4px 14px color-mix(in srgb, var(--inn-primary) 15%, transparent); }
.inn-bk__opt img { width: 46px; height: 46px; object-fit: cover; border-radius: 10px; flex-shrink: 0; }
.inn-bk__opt span { flex: 1; display: grid; gap: 2px; }
.inn-bk__opt small { color: #6b7280; font-size: 12.5px; }
.inn-bk__opt em { font-style: normal; font-size: 13px; font-weight: 700; color: var(--inn-primary); white-space: nowrap; }
.inn-bk__av { width: 46px !important; height: 46px; border-radius: 50% !important; background: color-mix(in srgb, var(--inn-primary) 12%, #fff); color: var(--inn-primary); display: grid !important; place-items: center; font-weight: 800; flex: 0 0 46px !important; }
.inn-bk__days { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 8px; scroll-snap-type: x mandatory; }
.inn-bk__days button { flex: 0 0 86px; scroll-snap-align: start; border: 1.5px solid var(--inn-border, #e5e7eb); background: #fff; border-radius: var(--ind-r); padding: 10px 6px; cursor: pointer; font: inherit; display: grid; gap: 2px; color: inherit; }
.inn-bk__days button small { color: #6b7280; font-size: 12px; }
.inn-bk__days button b { font-size: 13.5px; }
.inn-bk__days button em { font-style: normal; font-size: 11px; color: var(--ind-err); }
.inn-bk__days button.is-on { border-color: var(--inn-primary); background: var(--inn-primary); color: #fff; }
.inn-bk__days button.is-on small { color: rgba(255,255,255,.85); }
.inn-bk__days button[disabled] { opacity: .45; cursor: not-allowed; }
.inn-bk__slots { margin-top: 10px; display: grid; gap: 12px; }
.inn-bk__part h5 { margin: 0 0 6px; font-size: 13px; color: #6b7280; }
.inn-bk__part div { display: grid; grid-template-columns: repeat(auto-fill, minmax(76px, 1fr)); gap: 8px; }
.inn-bk__part button { border: 1.5px solid var(--inn-border, #e5e7eb); background: #fff; border-radius: var(--ind-r); padding: 10px 4px; cursor: pointer; font: inherit; font-weight: 600; color: inherit; }
.inn-bk__part button:hover, .inn-bk__part button:focus-visible { border-color: var(--inn-primary); color: var(--inn-primary); }
.inn-bk__summary { background: var(--inn-alt-bg, #f8fafc); border-radius: var(--ind-r); padding: 6px 16px; margin-bottom: 14px; }
.inn-bk__form { border: 0; padding: 0; margin: 0; }
.inn-bk__nav:empty { display: none; }
.inn-bk-card { border: 1px solid var(--inn-border, #e5e7eb); border-radius: calc(var(--ind-r) + 4px); padding: 20px; background: #fff; display: grid; gap: 14px; }
.inn-bk-card__ok { text-align: center; color: var(--ind-ok); display: grid; justify-items: center; gap: 6px; }
.inn-bk-card__ok h3 { margin: 0; color: var(--inn-heading, #111); }
.inn-bk-card .inn-btn { justify-self: start; }
.inn-services { display: grid; gap: 26px; }
.inn-services h3 { margin: 0 0 10px; padding-bottom: 8px; border-bottom: 2px solid var(--inn-primary); display: inline-block; }
.inn-services ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; }
.inn-services li { display: flex; align-items: center; gap: 14px; padding: 12px 0; border-bottom: 1px dashed var(--inn-border, #e5e7eb); }
.inn-services li img { width: 54px; height: 54px; object-fit: cover; border-radius: 12px; }
.inn-services li div { flex: 1; display: grid; gap: 2px; }
.inn-services li small { color: #6b7280; }
.inn-services__price { font-weight: 700; white-space: nowrap; }
.inn-services .inn-btn { padding: 7px 16px; min-height: 0; font-size: 13px; }
.inn-staff-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 18px; margin-bottom: 20px; }
.inn-staff-card { text-align: center; border-radius: calc(var(--ind-r) + 6px); overflow: hidden; background: #fff; border: 1px solid var(--inn-border, #e5e7eb); padding-bottom: 16px; }
.inn-staff-card img, .inn-staff-card__ph { width: 100%; aspect-ratio: 1; object-fit: cover; display: grid; place-items: center; background: var(--inn-alt-bg, #f3f4f6); color: #9ca3af; }
.inn-staff-card h3 { margin: 14px 12px 4px; font-size: 1.05em; }
.inn-staff-card p { margin: 0 12px; color: #6b7280; font-size: 13.5px; }
.inn-staff-card ul { list-style: none; padding: 0; margin: 10px 12px 0; display: flex; flex-wrap: wrap; gap: 4px; justify-content: center; }
.inn-staff-card li { font-size: 12px; background: var(--inn-alt-bg, #f3f4f6); border-radius: 99px; padding: 2px 10px; }
.inn-ba { margin: 0 0 24px; }
.inn-ba__wrap { position: relative; overflow: hidden; border-radius: calc(var(--ind-r) + 4px); aspect-ratio: 4 / 3; user-select: none; }
.inn-ba__wrap img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.inn-ba__before { clip-path: inset(0 0 0 calc(100% - var(--p))); }
[dir=ltr] .inn-ba__before { clip-path: inset(0 calc(100% - var(--p)) 0 0); }
.inn-ba__wrap:after { content: ""; position: absolute; top: 0; bottom: 0; right: var(--p); width: 3px; background: #fff; box-shadow: 0 0 8px rgba(0,0,0,.3); pointer-events: none; }
.inn-ba__wrap input { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: ew-resize; margin: 0; direction: rtl; }
.inn-ba__tag { position: absolute; top: 12px; background: rgba(0,0,0,.55); color: #fff; font-size: 12px; padding: 3px 10px; border-radius: 99px; z-index: 1; pointer-events: none; }
.inn-ba__tag.is-b { right: 12px; } .inn-ba__tag.is-a { left: 12px; }
.inn-ba figcaption { text-align: center; color: #6b7280; font-size: 14px; margin-top: 8px; }

/* ---------- آموزشگاه ---------- */
.inn-course { display: grid; grid-template-columns: 1fr 340px; gap: 30px; align-items: start; }
.inn-course__side { position: sticky; top: 90px; display: grid; gap: 16px; }
.inn-course__box { border: 1px solid var(--inn-border, #e5e7eb); border-radius: calc(var(--ind-r) + 4px); padding: 18px; background: #fff; }
.inn-course__price { font-size: 1.35em; text-align: center; padding-bottom: 12px; margin-bottom: 6px; border-bottom: 1px solid var(--inn-border, #e5e7eb); }
.inn-course__price del { font-size: .7em; color: #9ca3af; }
.inn-course__price b { color: var(--inn-primary); }
.inn-course__form { margin: 0; }
.inn-course__closed { padding: 16px; text-align: center; background: #fef2f2; color: #991b1b; border-radius: var(--ind-r); }
.inn-course__syllabus { counter-reset: s; list-style: none; padding: 0; margin: 0 0 24px; display: grid; gap: 8px; }
.inn-course__syllabus li { counter-increment: s; display: flex; gap: 12px; align-items: center; padding: 12px 14px; background: var(--inn-alt-bg, #f8fafc); border-radius: var(--ind-r); }
.inn-course__syllabus li:before { content: counter(s, persian); width: 28px; height: 28px; border-radius: 50%; background: var(--inn-primary); color: #fff; display: grid; place-items: center; font-size: 13px; font-weight: 700; flex-shrink: 0; }
.inn-course__teacher { display: flex; gap: 16px; align-items: center; padding: 18px; border: 1px solid var(--inn-border, #e5e7eb); border-radius: calc(var(--ind-r) + 4px); margin-top: 24px; }
.inn-course__teacher img { width: 84px; height: 84px; border-radius: 50%; object-fit: cover; }
.inn-course__teacher h4 { margin: 2px 0 4px; }
.inn-course__teacher p { margin: 0; color: #6b7280; font-size: 14px; }
.inn-course__teacher small { color: var(--inn-primary); font-weight: 600; }
@media (max-width: 900px) { .inn-course { grid-template-columns: 1fr; } .inn-course__side { position: static; } }
.inn-cr-grid-front { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 20px; margin-bottom: 24px; }
.inn-cr-card { border: 1px solid var(--inn-border, #e5e7eb); border-radius: calc(var(--ind-r) + 6px); overflow: hidden; background: #fff; display: flex; flex-direction: column; transition: box-shadow .2s, transform .2s; }
.inn-cr-card:hover { box-shadow: 0 14px 30px rgba(15,23,42,.08); transform: translateY(-2px); }
.inn-cr-card[hidden] { display: none; }
.inn-cr-card__img { position: relative; aspect-ratio: 16 / 10; display: block; background: var(--inn-alt-bg, #f3f4f6); }
.inn-cr-card__img img { width: 100%; height: 100%; object-fit: cover; }
.inn-cr-card__ph { position: absolute; inset: 0; display: grid; place-items: center; color: #9ca3af; }
.inn-cr-card__mode { position: absolute; top: 12px; inset-inline-start: 12px; background: rgba(255,255,255,.92); border-radius: 99px; padding: 2px 12px; font-size: 12px; font-weight: 600; }
.inn-cr-card__body { padding: 16px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.inn-cr-card__body > small { color: var(--inn-primary); font-weight: 600; }
.inn-cr-card h3 { margin: 0; font-size: 1.05em; line-height: 1.7; }
.inn-cr-card h3 a { color: inherit; text-decoration: none; }
.inn-cr-card ul { list-style: none; padding: 0; margin: 0; display: grid; gap: 4px; font-size: 13px; color: #4b5563; }
.inn-cr-card li { display: flex; gap: 6px; align-items: center; }
.inn-cr-card__foot { margin-top: auto; padding-top: 12px; border-top: 1px solid var(--inn-border, #eef0f3); display: flex; justify-content: space-between; align-items: center; gap: 8px; flex-wrap: wrap; }
.inn-cr-card__price del { color: #9ca3af; font-size: .85em; }
.inn-cr-free { color: var(--ind-ok); }
.inn-cr-week { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 14px; margin-bottom: 24px; }
.inn-cr-week section { border: 1px solid var(--inn-border, #e5e7eb); border-radius: calc(var(--ind-r) + 4px); overflow: hidden; background: #fff; }
.inn-cr-week h4 { margin: 0; padding: 10px 14px; background: var(--inn-primary); color: #fff; font-size: 15px; }
.inn-cr-week a { display: grid; gap: 2px; padding: 10px 14px; border-bottom: 1px solid var(--inn-border, #eef0f3); color: inherit; text-decoration: none; font-size: 14px; }
.inn-cr-week a:hover { background: var(--inn-alt-bg, #f8fafc); }
.inn-cr-week a b { color: var(--inn-primary); font-size: 13px; }
.inn-cr-week small { color: #6b7280; }
.inn-my-courses { display: grid; gap: 12px; }
.inn-my-courses article { display: flex; justify-content: space-between; gap: 16px; padding: 16px; border: 1px solid var(--inn-border, #e5e7eb); border-radius: calc(var(--ind-r) + 4px); flex-wrap: wrap; }
.inn-my-courses article > div:last-child { display: grid; gap: 8px; justify-items: end; align-content: start; }
.inn-my-courses h4 { margin: 0 0 4px; }
.inn-my-courses p { margin: 0 0 6px; color: #6b7280; font-size: 14px; }
.inn-my-courses__bar { height: 6px; border-radius: 99px; background: #e5e7eb; overflow: hidden; width: 220px; max-width: 100%; }
.inn-my-courses__bar span { display: block; height: 100%; background: var(--inn-primary); }

/* ---------- کتاب ---------- */
.inn-book-meta { display: flex; flex-wrap: wrap; gap: 6px 18px; margin: -6px 0 16px; font-size: 14px; }
.inn-book-meta small { color: #6b7280; }
.inn-book-meta a { font-weight: 600; text-decoration: none; }
.inn-book-author { display: block; font-size: 13px; color: #6b7280; margin-top: -2px; }
.inn-book-sample { margin: 0 0 16px; display: inline-flex; gap: 8px; align-items: center; }
.inn-book-terms nav { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 18px; position: sticky; top: 70px; background: var(--inn-bg, #fff); padding: 8px 0; z-index: 2; }
.inn-book-terms nav a { width: 34px; height: 34px; border-radius: 8px; display: grid; place-items: center; background: var(--inn-alt-bg, #f3f4f6); text-decoration: none; color: inherit; font-weight: 700; }
.inn-book-terms section { margin-bottom: 20px; scroll-margin-top: 130px; }
.inn-book-terms h3 { margin: 0 0 8px; color: var(--inn-primary); }
.inn-book-terms ul { list-style: none; padding: 0; margin: 0; columns: 3 200px; }
.inn-book-terms li { break-inside: avoid; padding: 4px 0; }
.inn-book-terms li a { text-decoration: none; color: inherit; }
.inn-book-terms small { color: #9ca3af; }
.inn-book-term-head { background: var(--inn-alt-bg, #f8fafc); border-radius: calc(var(--ind-r) + 4px); padding: 18px 20px; margin-bottom: 20px; }
.inn-book-term-head small { color: var(--inn-primary); font-weight: 600; }
.inn-book-term-head h2 { margin: 2px 0 6px; }

/* ---------- استعلام و کاتالوگ ---------- */
.inn-q-price { color: #6b7280; font-size: .9em; font-weight: 600; }
.inn-q-add { display: flex; gap: 8px; align-items: center; margin: 0 0 16px; }
.inn-pc__cart .inn-q-add, .inn-product__footer .inn-q-add { margin: 0; width: 100%; }
.inn-q-add .inn-btn { display: inline-flex; gap: 6px; align-items: center; flex: 1; justify-content: center; }
.inn-q-qty { width: 76px; padding: 10px; border: 1px solid var(--inn-border, #d1d5db); border-radius: var(--ind-r); font: inherit; text-align: center; }
.inn-q-float { position: fixed; bottom: 18px; inset-inline-end: 18px; background: var(--inn-primary); color: #fff; padding: 12px 18px; border-radius: 99px; text-decoration: none; z-index: 9989; box-shadow: 0 10px 24px rgba(0,0,0,.2); font-weight: 600; }
.inn-q-float b { background: #fff; color: var(--inn-primary); border-radius: 99px; padding: 0 8px; margin-inline-start: 6px; }
body:has(.inn-mobile-nav) .inn-q-float { bottom: 84px; }
.inn-quote__table { width: 100%; border-collapse: collapse; margin: 0 0 20px; border: 1px solid var(--inn-border, #e5e7eb); border-radius: var(--ind-r); overflow: hidden; }
.inn-quote__table th, .inn-quote__table td { padding: 10px 12px; border: 0; border-bottom: 1px solid var(--inn-border, #eef0f3); text-align: start; vertical-align: middle; }
.inn-quote__table img { width: 44px; height: 44px; object-fit: cover; border-radius: 6px; vertical-align: middle; margin-inline-end: 8px; }
.inn-quote__table input { width: 80px; padding: 8px; border: 1px solid var(--inn-border, #d1d5db); border-radius: 8px; text-align: center; }
.inn-quote__table button { border: 0; background: #fee2e2; color: #b91c1c; width: 30px; height: 30px; border-radius: 50%; cursor: pointer; }
.inn-quote__list .inn-ind-empty { margin-bottom: 20px; }

/* ---------- دانلود ---------- */
.inn-dl-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 10px; }
.inn-dl-item { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border: 1px solid var(--inn-border, #e5e7eb); border-radius: var(--ind-r); text-decoration: none; color: inherit; background: #fff; transition: .15s; }
.inn-dl-item:hover { border-color: var(--inn-primary); }
.inn-dl-item > span:nth-child(2) { flex: 1; display: grid; }
.inn-dl-item small { color: #9ca3af; font-size: 12px; }
.inn-dl-item__ext { width: 44px; height: 44px; border-radius: 8px; background: color-mix(in srgb, var(--inn-primary) 12%, #fff); color: var(--inn-primary); font: 700 11px/1 sans-serif; display: grid; place-items: center; flex-shrink: 0; }
.inn-dl-item[hidden], .inn-downloads__product[hidden] { display: none; }
.inn-downloads { display: grid; gap: 24px; }
.inn-downloads__search { padding: 12px 16px; border: 1px solid var(--inn-border, #d1d5db); border-radius: var(--ind-r); font: inherit; width: 100%; box-sizing: border-box; }
.inn-downloads h3 { margin: 0 0 12px; }
.inn-downloads__product { display: grid; grid-template-columns: 220px 1fr; gap: 16px; padding: 14px 0; border-bottom: 1px solid var(--inn-border, #eef0f3); }
.inn-downloads__product > a { display: flex; gap: 10px; align-items: center; color: inherit; text-decoration: none; }
.inn-downloads__product > a img { width: 56px; height: 56px; object-fit: cover; border-radius: 8px; }
@media (max-width: 700px) { .inn-downloads__product { grid-template-columns: 1fr; } }
.inn-dl-gate { position: fixed; inset: 0; background: rgba(15,23,42,.55); z-index: 99990; display: grid; place-items: center; padding: 16px; }
.inn-dl-gate[hidden] { display: none; }
.inn-dl-gate form { width: min(420px, 100%); margin: 0; }

/* ---------- نمایندگان ---------- */
.inn-agents__filter { display: flex; gap: 10px; margin-bottom: 16px; flex-wrap: wrap; }
.inn-agents__filter select, .inn-agents__filter input { padding: 10px 12px; border: 1px solid var(--inn-border, #d1d5db); border-radius: var(--ind-r); font: inherit; min-width: 200px; flex: 1; }
.inn-agents__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 14px; }
.inn-agent { border: 1px solid var(--inn-border, #e5e7eb); border-radius: calc(var(--ind-r) + 4px); padding: 16px; background: #fff; }
.inn-agent[hidden] { display: none; }
.inn-agent header { display: flex; gap: 10px; align-items: center; margin-bottom: 10px; }
.inn-agent header img { width: 48px; height: 48px; border-radius: 10px; object-fit: cover; }
.inn-agent header div { flex: 1; }
.inn-agent h4 { margin: 0; }
.inn-agent header small { color: #6b7280; }
.inn-agent ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; font-size: 14px; }
.inn-agent li { display: flex; gap: 8px; align-items: flex-start; }
.inn-agent li .inn-icon { flex-shrink: 0; margin-top: 4px; color: var(--inn-primary); }

/* ---------- ارزش غذایی ---------- */
.inn-nu-label { margin: 0 0 18px; }
.inn-nu-label__row { display: flex; gap: 6px; flex-wrap: wrap; }
.inn-nu-box { flex: 1 0 70px; max-width: 110px; border: 2px solid #d1d5db; border-radius: 40px 40px 12px 12px; text-align: center; padding: 10px 4px 8px; display: grid; gap: 1px; background: #fff; font-size: 12px; }
.inn-nu-box__n { font-weight: 700; font-size: 11.5px; }
.inn-nu-box b { font-size: 16px; line-height: 1.4; }
.inn-nu-box small { color: #4b5563; font-size: 11px; }
.inn-nu-box em { font-style: normal; font-weight: 700; background: #fff; border-radius: 99px; margin: 2px 8px 0; font-size: 12px; }
.inn-nu-box i { font-style: normal; font-size: 10.5px; font-weight: 600; }
.inn-nu-box.is-low { background: #bbf7d0; border-color: #16a34a; }
.inn-nu-box.is-med { background: #fed7aa; border-color: #f59e0b; }
.inn-nu-box.is-high { background: #fecaca; border-color: #dc2626; }
.inn-nu-label__foot { display: block; color: #6b7280; font-size: 12px; margin-top: 6px; }
.inn-nu-table { width: 100%; border-collapse: collapse; max-width: 640px; }
.inn-nu-table th, .inn-nu-table td { padding: 9px 10px; border: 0; border-bottom: 1px solid var(--inn-border, #e5e7eb); text-align: start; font-size: 14px; }
.inn-nu-table thead th { border-bottom: 3px solid var(--inn-heading, #111); font-size: 13px; }
.inn-nu-table tr.is-sub th { padding-inline-start: 26px; font-weight: 400; }
.inn-nu-dot { display: inline-block; width: 10px; height: 10px; border-radius: 50%; margin-inline-end: 6px; }
.inn-nu-dot.is-low { background: #16a34a; } .inn-nu-dot.is-med { background: #f59e0b; } .inn-nu-dot.is-high { background: #dc2626; }
.inn-nu-allergen { background: #fffbeb; padding: 10px 14px; border-radius: var(--ind-r); color: #92400e; }
.inn-nu-kcal { display: inline-block; font-size: 12px; color: #6b7280; }

/* ---------- عمده ---------- */
.inn-ws-tiers { width: 100%; border-collapse: collapse; margin: 0 0 18px; font-size: 14px; border: 1px solid var(--inn-border, #e5e7eb); border-radius: var(--ind-r); overflow: hidden; }
.inn-ws-tiers caption { text-align: start; font-weight: 700; padding: 0 0 8px; }
.inn-ws-tiers th, .inn-ws-tiers td { padding: 8px 12px; border: 0; border-bottom: 1px solid var(--inn-border, #eef0f3); text-align: start; }
.inn-ws-tiers thead th { background: var(--inn-alt-bg, #f8fafc); font-weight: 600; font-size: 13px; }
.inn-ws-tiers td:last-child { color: var(--ind-ok); font-weight: 600; }
.inn-ws-tag { background: #ecfdf5; color: #047857; border-radius: 99px; padding: 1px 8px; font-size: 11px; font-weight: 600; }

@media (max-width: 600px) {
	.inn-ind-form > .inn-btn, .inn-ind-form button[type=submit] { justify-self: stretch; }
	.inn-cmp-bar { bottom: 76px; padding: 8px; gap: 8px; }
	.inn-cmp-bar__items img { width: 36px; height: 36px; }
	.inn-gold-board__group { border-inline-start: 0; border-top: 1px solid var(--inn-border, #e5e7eb); }
	.inn-wr-card { flex-direction: column; }
}
.inn-bk, .inn-ind-form, .inn-gold-calc__body { grid-template-columns: minmax(0, 1fr); }
.inn-bk > *, .inn-bk__step, .inn-ind-form > * { min-width: 0; }
.inn-gold-ticker { max-width: 100vw; }
