/* ================================================================
   BROKER PAGES — "Trading Desk Daylight" (Light Theme)
   static/css/brokers.css — Scoped with .br- prefix
   ================================================================ */

/* Shabnam (اگر fonts.css قبلاً register کرده، این ۴ بلاک را حذف کنید) */
@font-face{font-family:'Shabnam';src:url('../fonts/shabnam/Shabnam.woff2') format('woff2'),url('../fonts/shabnam/Shabnam.woff') format('woff'),url('../fonts/shabnam/Shabnam.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:'Shabnam';src:url('../fonts/shabnam/Shabnam-Bold.woff2') format('woff2'),url('../fonts/shabnam/Shabnam-Bold.woff') format('woff'),url('../fonts/shabnam/Shabnam-Bold.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:'Shabnam';src:url('../fonts/shabnam/Shabnam-Medium.woff2') format('woff2'),url('../fonts/shabnam/Shabnam-Medium.woff') format('woff'),url('../fonts/shabnam/Shabnam-Medium.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:'Shabnam';src:url('../fonts/shabnam/Shabnam-Light.woff2') format('woff2'),url('../fonts/shabnam/Shabnam-Light.woff') format('woff'),url('../fonts/shabnam/Shabnam-Light.ttf') format('truetype');font-weight:300;font-display:swap}

.br-wrap{
    --br-blue:#2563EB;--br-blue-dark:#1D4ED8;
    --br-cyan:#0891B2;
    --br-green:#059669;--br-green-strong:#047857;
    --br-gold:#D97706;--br-gold-strong:#B45309;
    --br-red:#DC2626;
    --br-text:#0F172A;--br-text-2:#64748B;--br-muted:#94A3B8;
    --br-border:#E2E8F0;--br-border-soft:#EEF2F8;
    --br-star:#F5B942;
    --br-shadow:0 1px 2px rgba(15,23,42,.04),0 12px 28px -14px rgba(15,23,42,.10);
    --br-shadow-lift:0 6px 14px rgba(15,23,42,.05),0 26px 54px -22px rgba(37,99,235,.22);
    position:relative;
    font-family:'Shabnam','Segoe UI',Tahoma,sans-serif;
    color:var(--br-text);
    background:
        radial-gradient(110% 80% at 80% -10%,rgba(59,130,246,.08),transparent 55%),
        radial-gradient(80% 60% at 4% 108%,rgba(217,119,6,.05),transparent 60%),
        linear-gradient(180deg,#FFFFFF 0%,#F6F8FC 100%);
    overflow:hidden;
    padding:clamp(28px,5vh,56px) 0 clamp(40px,6vh,72px);
}
.br-grid-bg{position:absolute;inset:0;z-index:0;pointer-events:none;
    background-image:linear-gradient(rgba(37,99,235,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(37,99,235,.05) 1px,transparent 1px);
    background-size:48px 48px;
    -webkit-mask-image:radial-gradient(ellipse at 50% 0%,black 20%,transparent 70%);
    mask-image:radial-gradient(ellipse at 50% 0%,black 20%,transparent 70%);
}
.br-container{position:relative;z-index:1;max-width:1000px;margin:0 auto;padding:0 22px}
.br-container--wide{max-width:1200px}

/* ---------- Breadcrumb ---------- */
.br-crumb{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13.5px;margin-bottom:22px}
.br-crumb a{color:var(--br-blue);text-decoration:none;font-weight:600}
.br-crumb a:hover{text-decoration:underline}
.br-crumb-sep{color:var(--br-muted)}
.br-crumb-cur{color:var(--br-text-2)}

/* ---------- Page hero (list) ---------- */
.br-phead{text-align:center;max-width:640px;margin:0 auto clamp(30px,5vw,48px)}
.br-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--br-gold-strong);background:#FFFBEB;border:1px solid #FDE68A;padding:7px 16px;border-radius:999px;margin-bottom:16px}
.br-eyebrow--blue{color:#1D4ED8;background:#EFF6FF;border-color:#BFDBFE}
.br-phead h1{font-size:clamp(1.6rem,3.2vw,2.3rem);font-weight:700;letter-spacing:-.02em}
.br-phead p{color:var(--br-text-2);margin-top:10px;font-size:1.02rem}

/* ---------- Cards / sections ---------- */
.br-card{background:#fff;border:1px solid var(--br-border);border-radius:18px;padding:clamp(20px,3vw,30px);box-shadow:var(--br-shadow);margin-bottom:22px}
.br-card-title{display:flex;align-items:center;gap:10px;font-size:1.1rem;font-weight:700;margin-bottom:18px}
.br-card-title::before{content:"";width:4px;height:20px;border-radius:99px;background:linear-gradient(180deg,#0891B2,#2563EB);flex-shrink:0}

/* ---------- Buttons ---------- */
.br-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 26px;border-radius:12px;font-weight:700;font-size:15px;font-family:inherit;cursor:pointer;border:none;text-decoration:none;transition:transform .25s,box-shadow .25s,border-color .25s,color .25s}
.br-btn--primary{background:linear-gradient(135deg,#0891B2,#2563EB);color:#fff;box-shadow:0 10px 26px -8px rgba(37,99,235,.5)}
.br-btn--primary:hover{transform:translateY(-2px);box-shadow:0 16px 36px -10px rgba(37,99,235,.6)}
.br-btn--success{background:linear-gradient(135deg,#10B981,#059669);color:#fff;box-shadow:0 10px 26px -8px rgba(5,150,105,.45)}
.br-btn--success:hover{transform:translateY(-2px);box-shadow:0 16px 36px -10px rgba(5,150,105,.55)}
.br-btn--ghost{background:#fff;color:#334155;border:1px solid #CBD5E1}
.br-btn--ghost:hover{transform:translateY(-1px);border-color:var(--br-blue);color:var(--br-blue)}
.br-btn--white{background:#fff;color:#1D4ED8;box-shadow:0 10px 30px -10px rgba(0,0,0,.35)}
.br-btn--white:hover{transform:translateY(-2px)}
.br-btn--block{width:100%}
.br-btn--lg{padding:16px 34px;font-size:16px}
.br-btn--sm{padding:9px 18px;font-size:13.5px;border-radius:10px}
.br-arrow{display:inline-block;transition:transform .25s}
a:hover .br-arrow{transform:translateX(4px)}
[dir="rtl"] .br-arrow{transform:scaleX(-1)}
[dir="rtl"] a:hover .br-arrow{transform:scaleX(-1) translateX(4px)}

/* ---------- Chips ---------- */
.br-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 13px;border-radius:99px;font-size:12.5px;font-weight:700}
.br-chip--blue{background:#EFF6FF;color:#1D4ED8;border:1px solid #BFDBFE}
.br-chip--green{background:#ECFDF5;color:#047857;border:1px solid #A7F3D0}
.br-chip--amber{background:#FFFBEB;color:#B45309;border:1px solid #FDE68A}
.br-chip--slate{background:#F1F5F9;color:#475569;border:1px solid #E2E8F0}
.br-chips{display:flex;gap:7px;flex-wrap:wrap}

/* ---------- Stars ---------- */
.br-stars{position:relative;display:inline-block;line-height:1;direction:ltr;font-size:15px;letter-spacing:3px}
.br-stars-row{color:#E2E8F0;white-space:nowrap}
.br-stars-on{position:absolute;inset-inline-start:0;top:0;overflow:hidden;white-space:nowrap;color:var(--br-star)}

/* ============ DETAIL HERO ============ */
.br-hero{display:grid;grid-template-columns:1fr auto;gap:clamp(20px,3vw,36px);align-items:start}
.br-hero-id{display:flex;gap:20px;align-items:flex-start;flex-wrap:wrap}
.br-logo{width:78px;height:78px;border-radius:20px;object-fit:cover;border:1px solid var(--br-border);background:#fff;box-shadow:var(--br-shadow);flex-shrink:0}
.br-logo--round{border-radius:50%}
.br-logo-ph{width:78px;height:78px;border-radius:20px;display:grid;place-items:center;font-size:2.4rem;background:linear-gradient(135deg,#FFFBEB,#FEF3C7);border:1px solid #FDE68A;flex-shrink:0}
.br-hero-name{font-size:clamp(1.4rem,2.8vw,1.9rem);font-weight:700;letter-spacing:-.02em;margin:0 0 8px}
.br-hero-short{color:var(--br-text-2);font-size:14.5px;line-height:1.7;margin:0 0 14px;max-width:560px}
.br-hero-side{display:flex;flex-direction:column;align-items:center;gap:12px;min-width:190px}

.br-rating{background:linear-gradient(180deg,#F8FAFC,#F1F5F9);border:1px solid var(--br-border);border-radius:16px;padding:16px 26px;text-align:center;width:100%}
.br-rating-num{font-size:2rem;font-weight:700;direction:ltr;line-height:1.1}
.br-rating-reviews{color:var(--br-muted);font-size:12.5px;margin-top:6px}

/* ---------- Key info strip ---------- */
.br-facts{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:22px}
.br-fact{background:#fff;border:1px solid var(--br-border);border-radius:14px;padding:14px 10px;text-align:center;box-shadow:var(--br-shadow)}
.br-fact-label{font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--br-text-2);margin-bottom:5px}
.br-fact-value{font-size:14.5px;font-weight:700;direction:ltr}
.br-fact-value.ltr-reset{direction:inherit}

/* ---------- Banner ---------- */
.br-banner{border-radius:18px;overflow:hidden;margin-bottom:22px;border:1px solid var(--br-border);box-shadow:var(--br-shadow)}
.br-banner img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}

/* ---------- Regulations ---------- */
.br-reg{display:flex;justify-content:space-between;align-items:center;gap:14px;background:#F8FAFC;border:1px solid var(--br-border);border-radius:14px;padding:15px 18px;flex-wrap:wrap}
.br-reg-name{font-weight:700;font-size:14.5px}
.br-reg-lic{color:var(--br-text-2);font-size:13px;margin-top:2px;direction:ltr;text-align:start}

/* ---------- Prose (review content) ---------- */
.br-prose{line-height:1.95;color:#475569;font-size:15px}
.br-prose h2,.br-prose h3,.br-prose h4{color:var(--br-text);margin:1.5em 0 .6em;font-weight:700}
.br-prose h2:first-child,.br-prose h3:first-child{margin-top:0}
.br-prose p{margin-bottom:1em}
.br-prose ul,.br-prose ol{margin:0 0 1em;padding-inline-start:24px}
.br-prose li{margin-bottom:.45em}
.br-prose a{color:var(--br-blue);text-decoration:underline}
.br-prose img{max-width:100%;border-radius:12px}
.br-prose table{width:100%;border-collapse:collapse;margin-bottom:1em}
.br-prose table th,.br-prose table td{border:1px solid var(--br-border);padding:8px 12px}

/* ---------- Comparison table ---------- */
.br-table-wrap{overflow-x:auto;border:1px solid var(--br-border);border-radius:14px}
table.br-table{width:100%;border-collapse:collapse;font-size:14px;min-width:520px}
.br-table th{background:#F8FAFC;padding:13px 16px;font-weight:700;font-size:12.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--br-text-2);border-bottom:1px solid var(--br-border);white-space:nowrap}
.br-table th.br-th-feat{text-align:start}
.br-table th.br-th-acct{text-align:center;color:var(--br-blue-dark)}
.br-table td{padding:12px 16px;border-bottom:1px solid var(--br-border-soft);text-align:center;direction:ltr}
.br-table td.br-td-feat{text-align:start;direction:inherit;font-weight:600;color:var(--br-text-2);background:#FBFCFE}
.br-table tbody tr:last-child td{border-bottom:none}
.br-table tbody tr:hover td{background:#F8FAFC}
.br-table tbody tr:hover td.br-td-feat{background:#F1F5F9}

/* ---------- Payment methods ---------- */
.br-pay-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.br-pay-col{background:#F8FAFC;border:1px solid var(--br-border);border-radius:14px;padding:18px}
.br-pay-col h3{font-size:14.5px;font-weight:700;margin-bottom:12px;display:flex;align-items:center;gap:8px}
.br-pay-col .br-chips{margin:-3px}

/* ---------- Contact ---------- */
.br-contact{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.br-contact-row{display:flex;align-items:center;gap:12px;background:#F8FAFC;border:1px solid var(--br-border);border-radius:12px;padding:13px 16px;font-size:14px}
.br-contact-row b{color:var(--br-text-2);font-weight:600}
.br-contact-row a{color:var(--br-blue);text-decoration:none;word-break:break-all;direction:ltr}
.br-contact-row a:hover{text-decoration:underline}
.br-contact-ico{font-size:17px;flex-shrink:0}
.br-contact-plain{direction:ltr;unicode-bidi:plaintext}

/* ---------- FAQ ---------- */
.br-faq-list{display:grid;gap:12px}
details.br-faq{background:#fff;border:1px solid var(--br-border);border-radius:14px;overflow:hidden;transition:border-color .3s}
details.br-faq[open]{border-color:#FCD34D}
.br-faq summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;cursor:pointer;font-weight:600;list-style:none;font-size:14.5px}
.br-faq summary::-webkit-details-marker{display:none}
.br-faq-x{flex-shrink:0;width:26px;height:26px;border-radius:8px;display:grid;place-items:center;font-weight:800;background:#FFFBEB;color:var(--br-gold-strong);transition:transform .35s}
details[open] .br-faq-x{transform:rotate(45deg)}
.br-faq-body{padding:0 20px 16px;color:var(--br-text-2);font-size:14px;line-height:1.8}

/* ---------- Bottom CTA ---------- */
.br-cta{position:relative;overflow:hidden;text-align:center;color:#fff;border-radius:20px;padding:clamp(30px,5vw,52px) 24px;margin:26px 0;background:radial-gradient(70% 90% at 50% 115%,rgba(34,211,238,.28),transparent 60%),radial-gradient(50% 70% at 50% -20%,rgba(96,165,250,.25),transparent 60%),linear-gradient(135deg,#0F2A5E 0%,#1D4ED8 60%,#0E7490 130%)}
.br-cta::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:radial-gradient(ellipse at 50% 50%,black 20%,transparent 72%);mask-image:radial-gradient(ellipse at 50% 50%,black 20%,transparent 72%);pointer-events:none}
.br-cta h2{font-size:clamp(1.3rem,2.6vw,1.8rem);font-weight:700;position:relative}
.br-cta p{color:rgba(255,255,255,.82);margin:10px auto 24px;max-width:480px;font-size:14.5px;position:relative}
.br-cta-disc{position:relative;margin-top:18px;font-size:11.5px;color:rgba(255,255,255,.55);max-width:520px;margin-inline:auto;line-height:1.7}

/* ---------- Sticky mobile CTA ---------- */
.br-sticky{display:none;position:fixed;bottom:0;left:0;right:0;z-index:900;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--br-border);box-shadow:0 -8px 30px -12px rgba(15,23,42,.18);padding:10px 14px;gap:12px;align-items:center}
.br-sticky-name{flex:1;min-width:0;font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.br-sticky-name small{display:block;color:var(--br-muted);font-size:11px;font-weight:500}
@media (max-width:768px){
    .br-sticky{display:flex}
    .br-wrap{padding-bottom:86px}
}

/* ============ LIST PAGE ============ */
.br-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:22px}
.br-card-broker{display:flex;flex-direction:column;background:#fff;border:1px solid var(--br-border);border-radius:18px;padding:24px;box-shadow:var(--br-shadow);transition:transform .3s,border-color .3s,box-shadow .3s}
.br-card-broker:hover{transform:translateY(-6px);border-color:#FCD34D;box-shadow:var(--br-shadow-lift)}
.br-bk-top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:14px}
.br-bk-id{display:flex;gap:14px;align-items:center;min-width:0}
.br-bk-logo{width:54px;height:54px;border-radius:14px;object-fit:cover;border:1px solid var(--br-border);background:#fff;flex-shrink:0}
.br-bk-logo--round{border-radius:50%}
.br-bk-logo-ph{width:54px;height:54px;border-radius:14px;display:grid;place-items:center;font-size:1.6rem;background:linear-gradient(135deg,#FFFBEB,#FEF3C7);border:1px solid #FDE68A;flex-shrink:0}
.br-bk-name{font-size:16.5px;font-weight:700;margin:0 0 3px}
.br-bk-name a{color:var(--br-text);text-decoration:none}
.br-bk-name a:hover{color:var(--br-blue)}
.br-bk-desc{color:var(--br-text-2);font-size:13px;line-height:1.65;margin:0}
.br-bk-rate{flex-shrink:0;background:linear-gradient(180deg,#F8FAFC,#F1F5F9);border:1px solid var(--br-border);border-radius:12px;padding:9px 14px;text-align:center;min-width:62px}
.br-bk-rate-num{font-size:1.25rem;font-weight:700;direction:ltr;line-height:1.15}
.br-bk-rate .br-stars{font-size:11px;letter-spacing:2px;margin-top:3px}
.br-bk-feats{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
.br-bk-info{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:12.5px;color:var(--br-text-2);background:#F8FAFC;border:1px solid var(--br-border-soft);border-radius:12px;padding:10px 14px;margin-bottom:16px}
.br-bk-info span{display:inline-flex;align-items:center;gap:5px;direction:ltr}
.br-bk-btns{display:grid;grid-template-columns:1fr auto;gap:9px;margin-top:auto}
.br-empty{grid-column:1/-1;text-align:center;padding:56px 20px;color:var(--br-text-2);border:1px dashed #CBD5E1;border-radius:16px;background:#fff}

/* ---------- Responsive ---------- */
@media (max-width:900px){
    .br-hero{grid-template-columns:1fr}
    .br-hero-side{width:100%;flex-direction:row;justify-content:flex-start;flex-wrap:wrap}
    .br-facts{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:640px){
    .br-facts{grid-template-columns:repeat(2,1fr)}
    .br-pay-grid,.br-contact{grid-template-columns:1fr}
    .br-bk-btns{grid-template-columns:1fr}
    .br-hero-id{flex-direction:column}
    .br-hero-side{min-width:0}
}
@media (prefers-reduced-motion:reduce){
    .br-wrap *,.br-wrap *::before,.br-wrap *::after{transition-duration:.01ms!important}
}