/* ===== Parsa AI — استایل اصلی (طرح حرفه‌ای/آبی) ===== */

:root{
  --bg:#f6f8fc;
  --bg-soft:#ffffff;
  --surface:#ffffff;
  --surface-strong:#eef2fa;
  --border:rgba(15,23,42,.09);
  --border-strong:rgba(15,23,42,.16);
  --text:#0f172a;
  --text-dim:#51607a;
  --text-dimmer:#94a3b8;
  /* پالت آبی حرفه‌ای: آبی اصلی برای برند، آبی روشن فقط برای درخشش/هایلایت */
  --gold:#2563eb;
  --gold-2:#1e40af;
  --gold-bright:#38bdf8;
  --gold-soft:rgba(37,99,235,.12);
  --accent:#2563eb;
  --accent-2:#2563eb;
  --dark:#0a0f1f;
  --dark-2:#131c34;
  --danger:#dc2626;
  --ok:#16a34a;
  --radius-lg:22px;
  --radius-md:16px;
  --radius-sm:10px;
  --shadow-glow:0 14px 38px -14px rgba(37,99,235,.4);
  --shadow-sm:0 1px 2px rgba(15,23,42,.05);
  --shadow-md:0 10px 30px -12px rgba(15,23,42,.16);
  --shadow-lg:0 30px 70px -24px rgba(15,23,42,.24);
  --ease:cubic-bezier(.22,1,.36,1);
  --font-display:'Manrope',sans-serif;
  --font-body:'Inter',sans-serif;
}

*{box-sizing:border-box;}
html,body{height:100%;}
body{
  margin:0; background:var(--bg); color:var(--text);
  font-family:var(--font-body); direction:ltr; overflow-x:hidden;
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}
a{color:inherit;text-decoration:none;}
button,input,select,textarea{font-family:inherit;color:inherit;}
button{cursor:pointer;border:none;background:none;}
::selection{background:var(--gold);color:#fff8ea;}
::-webkit-scrollbar{width:8px;height:8px;}
::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:10px;}
.hidden{display:none !important;}

/* دسترسی‌پذیری: حلقه‌ی فوکوس برای ناوبری با کیبورد */
:focus-visible{ outline:2px solid var(--gold); outline-offset:2px; border-radius:6px; }
.btn:focus-visible, .icon-btn:focus-visible, .btn-google:focus-visible{ outline-offset:3px; }

@media (prefers-reduced-motion: reduce){
  *, *::before, *::after{ animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; scroll-behavior:auto !important; }
}

/* ===== پس‌زمینه: بافت ظریف تحریریه‌ای به‌جای بلاب‌های رنگی ===== */
.bg-fx{ position:fixed; inset:0; z-index:0; overflow:hidden; pointer-events:none;
  background:
    radial-gradient(60% 50% at 50% -10%, rgba(59,130,246,.10), transparent 62%),
    radial-gradient(40% 35% at 96% 100%, rgba(30,64,175,.07), transparent 60%),
    var(--bg);
}
.bg-fx::after{
  content:''; position:absolute; inset:0; opacity:.5; mix-blend-mode:multiply;
  background-image:radial-gradient(rgba(20,16,10,.05) 1px, transparent 1px);
  background-size:26px 26px;
}
html[data-theme="dark"] .bg-fx::after{ opacity:.35; mix-blend-mode:overlay; background-image:radial-gradient(rgba(255,255,255,.06) 1px, transparent 1px); }
.bg-fx .blob{ position:absolute; border-radius:50%; filter:blur(110px); opacity:.35; animation:float 26s ease-in-out infinite; }
.bg-fx .blob.b1{ width:460px; height:460px; top:-160px; inset-inline-end:-120px; background:radial-gradient(circle,var(--gold-bright),transparent 70%); }
.bg-fx .blob.b2{ width:380px; height:380px; bottom:-160px; inset-inline-start:-100px; background:radial-gradient(circle,var(--gold-2),transparent 70%); animation-delay:-9s; animation-duration:30s;}
.bg-fx .blob.b3{ display:none; }
.bg-fx .grid{ display:none; }
@keyframes float{ 0%,100%{ transform:translate(0,0) scale(1); } 33%{ transform:translate(16px,-22px) scale(1.04); } 66%{ transform:translate(-18px,12px) scale(.97); } }
.wrap{ position:relative; z-index:1; min-height:100%; }

/* ===== ناوبری بالا ===== */
.topbar{ display:flex; align-items:center; justify-content:space-between; padding:14px clamp(16px,4vw,56px); background:rgba(250,248,244,.72); backdrop-filter:blur(14px) saturate(140%); -webkit-backdrop-filter:blur(14px) saturate(140%); border-bottom:1px solid var(--border); position:sticky; top:0; z-index:40; }
html[data-theme="dark"] .topbar{ background:rgba(10,10,12,.7); }
.brand{ display:flex; align-items:center; gap:10px; flex-direction:row; }
.brand img{ height:38px; width:auto; display:block; }
.brand .brand-text{ display:flex; flex-direction:column; align-items:flex-start; line-height:1.3; }
html[dir="ltr"] .brand .brand-text{ align-items:flex-start; }
.brand .brand-text .name{ font-family:var(--font-display); font-weight:700; font-size:17px; letter-spacing:.5px; color:var(--text); }
.brand .brand-text .tagline{ font-size:10.5px; color:var(--text-dimmer); }
.nav-links{ display:flex; align-items:center; gap:32px; }
.nav-links a{ font-size:13.5px; font-weight:600; color:var(--text-dim); padding:6px 1px; border-bottom:2px solid transparent; transition:.2s var(--ease); letter-spacing:.1px; }
.nav-links a:hover, .nav-links a.active{ color:var(--text); border-color:var(--gold); }
.topbar-actions{ display:flex; align-items:center; gap:10px; }

/* دکمه‌ی همبرگر منو (فقط موبایل) */
.nav-toggle{ display:none; width:40px; height:40px; border-radius:10px; align-items:center; justify-content:center; color:var(--text); flex:none; }
.nav-toggle:hover{ background:var(--surface-strong); }
.nav-toggle svg{ width:21px; height:21px; }
.nav-toggle .i-close{ display:none; }
.nav-toggle.open .i-menu{ display:none; }
.nav-toggle.open .i-close{ display:block; }

/* پنل منوی موبایل */
.mobile-nav{ display:none; flex-direction:column; gap:2px; padding:10px clamp(16px,4vw,56px) 18px; background:var(--bg-soft); border-bottom:1px solid var(--border); position:sticky; top:66px; z-index:39; animation:fadeUp .25s var(--ease) both; }
.mobile-nav.show{ display:flex; }
.mobile-nav a{ padding:13px 6px; font-size:14.5px; font-weight:600; color:var(--text-dim); border-bottom:1px solid var(--border); }
.mobile-nav a:last-of-type{ border-bottom:none; }
.mobile-nav a:hover, .mobile-nav a.active{ color:var(--gold-2); }
.mobile-nav .mn-actions{ display:flex; gap:10px; margin-top:12px; }
.mobile-nav .mn-actions .btn{ flex:1; }

.theme-toggle-btn{ display:flex; align-items:center; justify-content:center; width:38px; height:38px; border-radius:50%; background:var(--surface-strong); border:1px solid var(--border); color:var(--text-dim); flex:none; transition:.25s var(--ease); }
.theme-toggle-btn svg{ width:18px; height:18px; }
.theme-toggle-btn:hover{ border-color:var(--gold); color:var(--gold-2); }
.theme-toggle-btn .icon-moon{ display:none; }
html[data-theme="dark"] .theme-toggle-btn .icon-sun{ display:none; }
html[data-theme="dark"] .theme-toggle-btn .icon-moon{ display:block; }

.btn{ position:relative; overflow:hidden; padding:12px 26px; border-radius:999px; font-weight:700; font-size:14px; letter-spacing:.1px; transition:transform .25s var(--ease), box-shadow .25s var(--ease), background .25s var(--ease), border-color .25s var(--ease); }
.btn::before{ content:''; position:absolute; inset:0; border-radius:inherit; background:linear-gradient(120deg, transparent 30%, rgba(255,255,255,.45) 50%, transparent 70%); transform:translateX(-120%); transition:transform .6s var(--ease); pointer-events:none; }
.btn:hover::before{ transform:translateX(120%); }
.btn:active{ transform:scale(.96); }
.btn-primary, .btn-gold{ background:linear-gradient(135deg,var(--gold),var(--gold-2)); color:#fff8ea; box-shadow:var(--shadow-glow); }
.btn-primary:hover, .btn-gold:hover{ transform:translateY(-2px); box-shadow:0 18px 40px -12px rgba(30,64,175,.5); }
.btn-ghost{ background:var(--surface); border:1px solid var(--border-strong); color:var(--text); }
.btn-ghost:hover{ background:var(--surface-strong); border-color:var(--gold-2); transform:translateY(-2px); }
.btn-dark{ background:linear-gradient(135deg,var(--dark),var(--dark-2)); color:var(--gold-bright); box-shadow:0 12px 30px -12px rgba(0,0,0,.55); }
.btn-dark:hover{ transform:translateY(-2px); box-shadow:0 16px 36px -12px rgba(0,0,0,.6); }
.btn-block{ width:100%; }

/* ===== هیرو ===== */
.hero{ padding:76px clamp(16px,4vw,56px) 30px; max-width:1180px; margin:0 auto; display:flex; align-items:center; gap:56px; }
.hero-visual{ flex:none; width:340px; display:flex; justify-content:center; position:relative; animation:fadeUp .8s var(--ease) both; }
.hero-visual::before{
  content:''; position:absolute; inset:8%; border-radius:50%; z-index:-1;
  background:radial-gradient(circle, var(--gold-soft), transparent 70%);
  filter:blur(6px);
}
.hero-visual img{ width:100%; max-width:300px; filter:drop-shadow(0 24px 54px rgba(30,64,175,.32)); animation:float 9s ease-in-out infinite; }
.hero-copy{ flex:1; text-align:right; }
html[dir="ltr"] .hero-copy{ text-align:left; }
.hero .eyebrow{ display:inline-flex; align-items:center; gap:8px; padding:7px 18px; border-radius:999px; background:var(--surface); border:1px solid var(--border-strong); font-size:12.5px; color:var(--gold-2); font-weight:700; letter-spacing:.2px; box-shadow:var(--shadow-sm); animation:fadeUp .7s var(--ease) both; }
.hero .eyebrow .dot{ width:6px; height:6px; border-radius:50%; background:var(--gold); box-shadow:0 0 8px var(--gold); animation:pulse 1.6s ease-in-out infinite; }
.hero h1{ font-family:var(--font-display); font-weight:700; font-size:clamp(32px,4.8vw,52px); letter-spacing:-.5px; line-height:1.35; margin:22px 0 18px; color:var(--text); animation:fadeUp .8s .1s var(--ease) both; }
.hero h1 .gold-text{ background:linear-gradient(135deg,var(--gold-bright),var(--gold-2)); -webkit-background-clip:text; background-clip:text; color:transparent; }
.hero p{ color:var(--text-dim); font-size:16.5px; line-height:1.95; max-width:560px; margin:0 0 28px; animation:fadeUp .8s .2s var(--ease) both; }
.hero .cta-row{ display:flex; gap:14px; flex-wrap:wrap; animation:fadeUp .8s .3s var(--ease) both; margin-bottom:26px; }
.trust-badges{ display:flex; gap:22px; flex-wrap:wrap; animation:fadeUp .8s .35s var(--ease) both; padding-top:18px; border-top:1px solid var(--border); }
.trust-badges span{ font-size:12.5px; color:var(--text-dim); font-weight:600; display:flex; align-items:center; gap:7px; }
.trust-badges svg{ width:15px; height:15px; color:var(--gold-2); flex:none; }
@keyframes fadeUp{ from{opacity:0; transform:translateY(16px);} to{opacity:1; transform:translateY(0);} }
@keyframes pulse{ 0%,100%{opacity:1;} 50%{opacity:.35;} }

/* ===== شبکه‌ی امکانات ===== */
.section-title{ text-align:center; margin:24px 0 40px; }
.section-title h2{ font-family:var(--font-display); font-weight:700; font-size:clamp(26px,4vw,34px); letter-spacing:-.3px; margin-bottom:10px; color:var(--text); }
.section-title p{ color:var(--text-dim); font-size:14.5px; }
.features-grid{ max-width:1140px; margin:0 auto; padding:44px clamp(16px,4vw,56px); display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.feature-card{ background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-md); padding:26px 20px; text-align:center; transition:transform .3s var(--ease), border-color .3s var(--ease), box-shadow .3s var(--ease); animation:fadeUp .5s var(--ease) both; position:relative; box-shadow:var(--shadow-sm); }
.feature-card::before{ content:''; position:absolute; top:0; inset-inline-start:22px; inset-inline-end:22px; height:2px; border-radius:2px; background:linear-gradient(90deg,transparent,var(--gold),transparent); opacity:0; transition:opacity .3s var(--ease); }
.feature-card:hover{ transform:translateY(-6px); border-color:var(--border-strong); box-shadow:var(--shadow-lg); }
.feature-card:hover::before{ opacity:1; }
.feature-card .icon{ width:46px; height:46px; margin:0 auto 14px; border-radius:13px; background:var(--gold-soft); display:flex; align-items:center; justify-content:center; color:var(--gold-2); }
.feature-card .icon svg{ width:22px; height:22px; }
.feature-card h4{ font-size:14.5px; font-weight:700; margin-bottom:7px; color:var(--text); }
.feature-card p{ font-size:12.5px; color:var(--text-dim); line-height:1.75; }

/* ===== چرا ما ===== */
.why-us{ max-width:1020px; margin:0 auto; padding:20px clamp(16px,4vw,56px) 56px; display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.why-card{ background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-md); padding:30px 24px; text-align:center; transition:transform .3s var(--ease), box-shadow .3s var(--ease); box-shadow:var(--shadow-sm); }
.why-card:hover{ transform:translateY(-6px); box-shadow:var(--shadow-md); }
.why-card .icon{ width:50px; height:50px; margin:0 auto 14px; border-radius:50%; background:var(--dark); color:var(--gold-bright); display:flex; align-items:center; justify-content:center; }
.why-card .icon svg{ width:22px; height:22px; }
.why-card h4{ font-size:15.5px; font-weight:700; margin-bottom:9px; color:var(--text); }
.why-card p{ font-size:12.5px; color:var(--text-dim); line-height:1.85; }

/* ===== بنر پایانی ===== */
.cta-banner{ max-width:1020px; margin:24px auto 64px; padding:40px clamp(20px,4vw,54px); border-radius:var(--radius-lg); background:linear-gradient(135deg,var(--dark),var(--dark-2)); display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; position:relative; overflow:hidden; box-shadow:var(--shadow-lg); }
.cta-banner::before{ content:''; position:absolute; inset:0; background:radial-gradient(50% 90% at 100% 0%, rgba(59,130,246,.22), transparent 65%); pointer-events:none; }
.cta-banner p{ color:#dbe6f5; font-size:17px; font-weight:600; margin:0; position:relative; }
.cta-banner .gold-text{ color:var(--gold-bright); }
.cta-banner .btn{ position:relative; }

/* ===== کاروسل/کارت برند ===== */
.providers-strip{ padding:36px clamp(16px,4vw,56px); }
.providers-strip h3{ text-align:center; color:var(--text-dim); font-weight:600; font-size:14px; margin-bottom:22px; letter-spacing:.3px; }
.carousel{ max-width:920px; margin:0 auto; overflow:hidden; }
.carousel-track{ display:flex; gap:18px; justify-content:center; }
.carousel-card{ width:220px; height:220px; border-radius:24px; background:var(--surface); border:1px solid var(--border); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:16px; flex:none; animation:cardIn .5s var(--ease) both; transition:.25s var(--ease); }
.carousel-card:hover{ border-color:var(--gold); transform:translateY(-6px); box-shadow:0 20px 40px -14px rgba(37,99,235,.35); }
.carousel-card img{ height:76px; width:auto; }
.carousel-card span{ font-family:var(--font-display); font-weight:700; font-size:16px; color:var(--text); }
.carousel-card .badge{ font-size:10px; color:var(--ok); background:rgba(63,143,95,.12); padding:3px 10px; border-radius:999px; }
@keyframes cardIn{ from{opacity:0; transform:scale(.85) translateY(10px);} to{opacity:1; transform:scale(1) translateY(0);} }

/* ===== auth ===== */
.auth-section{ padding:20px clamp(16px,4vw,56px) 70px; display:flex; justify-content:center; }
.auth-card{ width:100%; max-width:430px; background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-lg); padding:36px 32px; box-shadow:var(--shadow-lg); animation:fadeUp .6s var(--ease) both; }
.auth-tabs{ display:flex; background:var(--surface-strong); border-radius:999px; padding:4px; margin-bottom:24px; }
.auth-tabs button{ flex:1; padding:10px; border-radius:999px; font-weight:700; font-size:14px; color:var(--text-dim); transition:.25s var(--ease); }
.auth-tabs button.active{ background:linear-gradient(135deg,var(--gold),var(--gold-2)); color:#fff8ea; box-shadow:var(--shadow-glow); }
.field{ margin-bottom:16px; }
.field label{ display:block; font-size:13px; color:var(--text-dim); margin-bottom:7px; font-weight:600; }
.field input{ width:100%; padding:12px 14px; border-radius:var(--radius-sm); background:var(--surface-strong); border:1px solid var(--border); font-size:14px; transition:border-color .2s, box-shadow .2s; }
.field input::placeholder{ color:var(--text-dimmer); opacity:1; }
.field input:focus{ outline:none; border-color:var(--gold); box-shadow:0 0 0 3px var(--gold-soft); }
.field .hint{ font-size:12px; color:var(--text-dimmer); margin-top:6px; }
.pw-checklist{ list-style:none; padding:0; margin:8px 0 0; display:flex; flex-direction:column; gap:4px; }
.pw-checklist li{ font-size:12px; color:var(--text-dimmer); display:flex; align-items:center; gap:6px; transition:color .2s var(--ease); }
.pw-checklist li::before{ content:'○'; font-size:10px; }
.pw-checklist li.ok{ color:var(--ok); font-weight:600; }
.pw-checklist li.ok::before{ content:'✓'; font-size:12px; }
.pill-group{ display:flex; gap:8px; }
.pill-group .pill{ flex:1; padding:11px 8px; text-align:center; border-radius:var(--radius-sm); background:var(--surface-strong); border:1px solid var(--border); font-size:13px; font-weight:600; color:var(--text-dim); transition:all .2s var(--ease); }
.pill-group .pill.active{ background:var(--gold-soft); border-color:var(--gold); color:var(--gold-2); box-shadow:0 0 0 1px var(--gold) inset; }
.pill-group .pill:hover{ border-color:var(--gold); }
.date-row{ display:flex; gap:8px; }
.date-row select{ flex:1; padding:11px 8px; border-radius:var(--radius-sm); background:var(--surface-strong); border:1px solid var(--border); font-size:13px; font-weight:600; appearance:none; text-align:center; }
.date-row select:focus{ outline:none; border-color:var(--gold); }
.form-footer{ margin-top:20px; }
.switch-hint{ text-align:center; font-size:13px; color:var(--text-dim); margin-top:16px; }
.switch-hint button{ color:var(--gold-2); font-weight:700; }
.form-msg{ padding:10px 12px; border-radius:10px; font-size:13px; margin-bottom:14px; display:none; }
.form-msg.show{ display:block; animation:fadeUp .3s var(--ease); }
.form-msg.error{ background:rgba(201,67,47,.1); border:1px solid rgba(201,67,47,.3); color:#a5341f; }
.form-msg.ok{ background:rgba(63,143,95,.1); border:1px solid rgba(63,143,95,.3); color:#2c6b41; }

/* ویزارد ثبت‌نام */
.wizard-dots{ display:flex; justify-content:center; gap:8px; margin-bottom:22px; }
.wizard-dots .wdot{ width:8px; height:8px; border-radius:50%; background:var(--border); transition:.3s var(--ease); }
.wizard-dots .wdot.active{ background:var(--gold); width:22px; border-radius:6px; }
.wizard-dots .wdot.done{ background:var(--gold-2); }
.wizard-step{ animation:fadeUp .4s var(--ease) both; }
.wizard-actions{ display:flex; gap:10px; margin-top:4px; }
.wizard-actions .btn{ flex:1; }
.thankyou-step{ text-align:center; padding:20px 0; }
.thankyou-check{ width:64px; height:64px; border-radius:50%; margin:0 auto 18px; display:flex; align-items:center; justify-content:center; background:linear-gradient(135deg,var(--ok),#2c6b41); color:#fff; font-size:30px; font-weight:800; animation:popIn .5s var(--ease) both; }
.thankyou-step h3{ margin-bottom:8px; color:var(--text); }
.thankyou-step p{ color:var(--text-dim); font-size:13px; }
@keyframes popIn{ from{ transform:scale(0); opacity:0; } 70%{ transform:scale(1.15); } to{ transform:scale(1); opacity:1; } }

footer.site-footer{ text-align:center; padding:26px; color:var(--text-dimmer); font-size:12px; border-top:1px solid var(--border); }

/* ===================== محیط چت ===================== */
.chat-app{ display:flex; height:100vh; position:relative; z-index:1; background:var(--bg); }
.sidebar{ width:288px; flex:none; background:var(--surface-strong); border-left:1px solid var(--border); display:flex; flex-direction:column; padding:16px 12px; overflow-y:auto; }
html[dir="ltr"] .sidebar{ border-left:none; border-right:1px solid var(--border); }
.sidebar .brand{ padding:8px 8px 16px; }
.sidebar .brand img{ height:34px; }

.new-chat-btn{ display:flex; align-items:center; gap:8px; justify-content:center; padding:13px; border-radius:999px; background:linear-gradient(135deg,var(--gold),var(--gold-2)); color:#fff8ea; font-weight:700; font-size:14px; box-shadow:var(--shadow-glow); margin-bottom:16px; transition:transform .25s var(--ease), box-shadow .25s var(--ease); }
.new-chat-btn:hover{ transform:translateY(-2px); box-shadow:0 18px 40px -12px rgba(30,64,175,.5); }
.new-chat-btn:active{ transform:scale(.97); }
.chat-list-label{ font-size:11px; color:var(--text-dimmer); font-weight:700; margin:12px 4px 6px; }
.chat-list{ flex:1; overflow-y:auto; display:flex; flex-direction:column; gap:3px; }
.chat-list-item{ display:flex; align-items:center; gap:8px; padding:10px 12px; border-radius:11px; font-size:13px; color:var(--text-dim); cursor:pointer; transition:.18s var(--ease); border:1px solid transparent; }
.chat-list-item:hover{ background:var(--surface); }
.chat-list-item.active{ background:var(--surface); color:var(--gold-2); border-color:var(--border-strong); font-weight:600; box-shadow:var(--shadow-sm); }
.chat-list-item .title-text{ flex:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.chat-list-item .title-input{ flex:1; background:var(--surface); border:1px solid var(--gold); border-radius:6px; padding:3px 6px; font-size:13px; color:var(--text); }
.chat-item-actions{ display:flex; gap:2px; opacity:0; transition:.2s; }
.chat-list-item:hover .chat-item-actions{ opacity:1; }
.chat-item-actions button{ width:22px; height:22px; border-radius:6px; font-size:12px; color:var(--text-dimmer); display:flex; align-items:center; justify-content:center; }
.chat-item-actions button:hover{ background:var(--surface); color:var(--text); }
.chat-item-actions button.danger:hover{ color:var(--danger); }
.sidebar-footer{ padding-top:12px; border-top:1px solid var(--border); margin-top:10px; }
.user-chip{ display:flex; align-items:center; gap:10px; padding:8px 6px; }
.user-avatar{ width:34px; height:34px; border-radius:50%; background:linear-gradient(135deg,var(--gold),var(--gold-2)); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:14px; color:#fff8ea; flex:none; }
.user-name{ font-size:13px; font-weight:600; flex:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.plan-tag{ font-size:10px; padding:2px 8px; border-radius:999px; background:var(--surface); color:var(--text-dim); }
.plan-tag.pro,.plan-tag.promax{ background:linear-gradient(135deg,var(--gold),var(--gold-2)); color:#fff8ea; font-weight:700; }
.logout-btn{ font-size:12px; color:var(--text-dimmer); display:flex; align-items:center; }
.logout-btn:hover{ color:var(--danger); }

.chat-main{ flex:1; display:flex; flex-direction:column; min-width:0; }
.chat-topbar{ display:flex; align-items:center; justify-content:space-between; gap:14px; padding:14px 24px; border-bottom:1px solid var(--border); background:rgba(250,248,244,.85); backdrop-filter:blur(10px); position:sticky; top:0; z-index:5; }
html[data-theme="dark"] .chat-topbar{ background:rgba(13,13,15,.85); }
.chat-topbar .ct-actions{ display:flex; align-items:center; gap:10px; }

/* ===== تب‌های بالا: خانه / کد ===== */
.view-tabs{ display:flex; align-items:center; gap:4px; background:var(--surface-strong); border:1px solid var(--border); border-radius:999px; padding:4px; flex:none; }
.view-tab{ display:flex; align-items:center; gap:7px; padding:8px 16px; border-radius:999px; font-size:13px; font-weight:700; color:var(--text-dim); transition:.2s var(--ease); }
.view-tab svg{ width:15px; height:15px; }
.view-tab:hover{ color:var(--text); }
.view-tab.active{ background:var(--surface); color:var(--gold-2); box-shadow:var(--shadow-sm); }

.messages{ flex:1; overflow-y:auto; padding:28px clamp(14px,4vw,80px) 40px; display:flex; flex-direction:column; gap:20px; }
.msg{ display:flex; gap:12px; max-width:720px; animation:msgIn .35s var(--ease) both; }
@keyframes msgIn{ from{opacity:0; transform:translateY(10px);} to{opacity:1; transform:translateY(0);} }
.msg.user{ align-self:flex-end; flex-direction:row-reverse; max-width:82%; }
.msg .avatar{ width:32px; height:32px; border-radius:50%; flex:none; display:flex; align-items:center; justify-content:center; overflow:hidden; background:var(--surface-strong); border:1px solid var(--border); }
.msg .avatar img{ width:100%; height:100%; object-fit:contain; padding:5px; }
.msg .bubble{ padding:4px 2px; font-size:15.5px; line-height:1.95; background:none; border:none; color:var(--text); min-width:0; overflow-wrap:anywhere; word-break:break-word; }
.msg.user .bubble{ padding:12px 18px; background:linear-gradient(160deg,var(--gold-soft),var(--surface-strong)); border:1px solid var(--border); border-radius:20px 20px 4px 20px; box-shadow:var(--shadow-sm); }
html[dir="ltr"] .msg.user .bubble{ border-radius:20px 20px 20px 4px; }
.msg .bubble .msg-text{ white-space:pre-wrap; }
.msg .bubble img.attach{ max-width:240px; border-radius:14px; margin-top:8px; display:block; cursor:zoom-in; transition:opacity .2s; }
.msg .bubble img.attach:hover{ opacity:.85; }
.msg .bubble .attach-row{ display:flex; flex-wrap:wrap; gap:8px; margin-top:8px; }
.msg .bubble .attach-row img.attach{ margin-top:0; }
.msg-actions{ display:flex; gap:8px; margin-top:8px; opacity:0; transition:.2s; }
.msg:hover .msg-actions, .msg:focus-within .msg-actions{ opacity:1; }
.copy-btn{ width:28px; height:28px; border-radius:8px; display:flex; align-items:center; justify-content:center; color:var(--text-dimmer); border:1px solid transparent; transition:.2s var(--ease); }
.copy-btn:hover{ color:var(--gold-2); background:var(--surface-strong); border-color:var(--border); }
.copy-btn svg{ width:15px; height:15px; }
.copy-btn.copied{ color:var(--ok); }

.code-head .copy-btn{ opacity:1; color:#93a6c4; }
.code-head .copy-btn:hover{ color:#fff; background:rgba(255,255,255,.08); }
.code-block{ margin:12px 0; border-radius:14px; overflow:hidden; border:1px solid rgba(255,255,255,.08); background:var(--dark); box-shadow:var(--shadow-md); }
.code-head{ display:flex; align-items:center; justify-content:space-between; padding:9px 16px; background:var(--dark-2); font-size:12px; color:#93a6c4; font-weight:600; }

.code-block pre{ margin:0; padding:16px; overflow-x:auto; font-family:'Space Grotesk',ui-monospace,monospace; font-size:13px; line-height:1.8; direction:ltr; text-align:left; color:#dbe6f5; }

/* ===== AI ALAVIKIA Code — فایل‌براوزر پروژه‌ی ساخته‌شده ===== */
.build-project{ margin:12px 0; border-radius:16px; overflow:hidden; border:1px solid var(--gold); box-shadow:var(--shadow-sm); }
.build-project-head{ display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 16px 10px; background:linear-gradient(135deg,var(--gold-soft),var(--surface-strong)); font-weight:700; font-size:13.5px; color:var(--text); }
.build-project-head > span{ display:flex; align-items:center; gap:8px; }
.build-project-head svg{ width:17px; height:17px; color:var(--gold-2); flex:none; }
.build-project-note{ display:flex; align-items:flex-start; gap:8px; padding:0 16px 14px; background:var(--surface-strong); font-size:12px; color:var(--text-dim); line-height:1.8; }
.build-project-note svg{ width:14px; height:14px; color:var(--gold-2); flex:none; margin-top:2px; }
.build-project-actions{ display:flex; gap:10px; padding:12px 16px; background:var(--surface-strong); border-top:1px dashed var(--border); }
.btn-toggle-code{ display:flex; align-items:center; gap:7px; padding:8px 16px; border-radius:999px; background:var(--surface); border:1px solid var(--border); color:var(--text-dim); font-weight:700; font-size:12.5px; transition:.2s var(--ease); }
.btn-toggle-code:hover{ border-color:var(--gold-2); color:var(--gold-2); }
.btn-toggle-code svg{ width:14px; height:14px; }
.btn-toggle-code .btc-show, .btn-toggle-code .btc-hide{ display:flex; align-items:center; gap:7px; }
.build-files-list .build-file{ margin:0; border-radius:0; border-top:none; }
.build-files-list .build-file:last-of-type{ border-radius:0; }
.btn-download-zip{ display:flex; align-items:center; gap:7px; padding:8px 16px; border-radius:999px; background:linear-gradient(135deg,var(--gold),var(--gold-2)); color:#fff8ea; font-weight:700; font-size:12.5px; flex:none; transition:.2s var(--ease); box-shadow:0 6px 18px -8px rgba(30,64,175,.55); }
.btn-download-zip svg{ width:14px; height:14px; }
.btn-download-zip:hover{ transform:translateY(-1px); }
.btn-download-zip.loading{ opacity:.7; pointer-events:none; }

.typing{ display:flex; gap:4px; padding:6px 2px; }
.typing span{ width:6px; height:6px; border-radius:50%; background:var(--text-dim); animation:bounce 1.2s infinite ease-in-out; }
.typing span:nth-child(2){ animation-delay:.15s; }
.typing span:nth-child(3){ animation-delay:.3s; }
@keyframes bounce{ 0%,60%,100%{ transform:translateY(0); opacity:.4;} 30%{ transform:translateY(-6px); opacity:1;} }
@keyframes spin{ to{ transform:rotate(360deg); } }

.empty-chat{ margin:auto; text-align:center; max-width:600px; padding:0 20px; }
.empty-chat img{ width:104px; margin-bottom:18px; animation:float 7s ease-in-out infinite; filter:drop-shadow(0 16px 34px rgba(30,64,175,.3)); }
.empty-chat .ec-word{ font-family:var(--font-display); font-weight:700; font-size:24px; color:var(--text); margin-bottom:8px; }
.empty-chat .ec-tag{ color:var(--text-dim); font-size:14px; margin-bottom:28px; }
.build-home-icon{ width:64px; height:64px; margin:0 auto 18px; border-radius:20px; background:linear-gradient(160deg,var(--dark),var(--dark-2)); color:var(--gold); display:flex; align-items:center; justify-content:center; box-shadow:var(--shadow-md); }
.build-home-icon svg{ width:30px; height:30px; }
.build-examples{ display:flex; gap:10px; flex-wrap:wrap; justify-content:center; }
.build-example-btn{ padding:10px 18px; border-radius:999px; background:var(--surface); border:1px solid var(--border); font-size:13px; font-weight:600; color:var(--text-dim); transition:.2s var(--ease); box-shadow:var(--shadow-sm); }
.build-example-btn:hover{ border-color:var(--gold-2); color:var(--gold-2); transform:translateY(-2px); }
.quick-actions{ display:grid; grid-template-columns:repeat(2,1fr); gap:12px; max-width:480px; margin:0 auto; }
.quick-actions button, .quick-actions .qa-btn{
  display:flex; flex-direction:column; align-items:center; gap:9px; padding:20px 14px; border-radius:18px;
  background:var(--surface); border:1px solid var(--border); font-size:13px; font-weight:700; color:var(--text);
  transition:transform .25s var(--ease), border-color .25s var(--ease), box-shadow .25s var(--ease); text-align:center; box-shadow:var(--shadow-sm);
}
.quick-actions .qa-icon{ width:44px; height:44px; border-radius:13px; background:var(--gold-soft); color:var(--gold-2); display:flex; align-items:center; justify-content:center; }
.quick-actions .qa-icon svg{ width:20px; height:20px; }
.quick-actions .qa-desc{ font-size:11px; color:var(--text-dimmer); font-weight:400; }
.quick-actions button:hover, .quick-actions .qa-btn:hover{ border-color:var(--gold-2); transform:translateY(-4px); box-shadow:var(--shadow-md); }

.composer{ padding:14px clamp(14px,4vw,80px) 22px; border-top:1px solid var(--border); background:var(--surface); }
.attach-preview{ display:flex; gap:8px; margin-bottom:10px; }
.attach-chip{ position:relative; }
.attach-chip img{ width:56px; height:56px; object-fit:cover; border-radius:10px; border:1px solid var(--border); }
.attach-chip .rm{ position:absolute; top:-6px; right:-6px; width:18px; height:18px; border-radius:50%; background:var(--danger); color:#fff; font-size:11px; display:flex; align-items:center; justify-content:center; }
.composer-box{ display:flex; align-items:flex-end; gap:6px; background:var(--surface-strong); border:1px solid var(--border); border-radius:22px; padding:8px 8px 8px 14px; transition:border-color .2s, box-shadow .2s; box-shadow:var(--shadow-sm); }
.composer-box:focus-within{ border-color:var(--gold-2); box-shadow:0 0 0 3px var(--gold-soft); }
.composer-box textarea{ flex:1; background:none; border:none; resize:none; max-height:160px; padding:10px 4px; font-size:14.5px; line-height:1.7; }
.composer-box textarea::placeholder{ color:var(--text-dimmer); opacity:1; }
.composer-box textarea:focus{ outline:none; }
.icon-btn{ width:40px; height:40px; border-radius:50%; display:flex; align-items:center; justify-content:center; flex:none; color:var(--text-dim); transition:.25s var(--ease); }
.icon-btn svg{ width:20px; height:20px; }
.icon-btn.send svg{ width:19px; height:19px; margin-inline-start:1px; }
.icon-btn.mic .wave{ display:flex; align-items:center; gap:2px; height:16px; }
.icon-btn.mic .wave span{ width:3px; border-radius:2px; background:currentColor; animation:wave 1s ease-in-out infinite; }
.icon-btn.mic .wave span:nth-child(1){ height:6px; animation-delay:0s; }
.icon-btn.mic .wave span:nth-child(2){ height:16px; animation-delay:.15s; }
.icon-btn.mic .wave span:nth-child(3){ height:10px; animation-delay:.3s; }
.icon-btn.mic .wave span:nth-child(4){ height:14px; animation-delay:.45s; }
@keyframes wave{ 0%,100%{ transform:scaleY(.4); } 50%{ transform:scaleY(1); } }

.menu-toggle{ display:none; width:38px; height:38px; border-radius:10px; align-items:center; justify-content:center; color:var(--text-dim); flex:none; }
.menu-toggle svg{ width:20px; height:20px; }
.menu-toggle:hover{ background:var(--surface-strong); }
.sidebar-overlay{ display:none; position:fixed; inset:0; background:rgba(10,8,4,.45); z-index:19; }
.sidebar-overlay.show{ display:block; }

.bell-btn{ display:flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:50%; color:var(--text-dim); position:relative; }
.bell-btn:hover{ background:var(--surface-strong); }
.bell-btn svg{ width:18px; height:18px; }
.bell-btn::after{ content:''; position:absolute; top:5px; inset-inline-end:6px; width:7px; height:7px; border-radius:50%; background:var(--gold); }

.icon-btn.search-toggle.active{ background:var(--gold-soft); color:var(--gold-2); box-shadow:0 0 0 1px var(--gold) inset; }
.icon-btn.voice-toggle.active{ background:var(--gold-soft); color:var(--gold-2); box-shadow:0 0 0 1px var(--gold) inset; animation:pulse 1.6s ease-in-out infinite; }
.copy-btn.msg-speak.speaking{ color:var(--gold-2); animation:pulse 1s ease-in-out infinite; }
/* تراشه‌ی منبع/citation — لینک تمیز به‌جای متن خام [عنوان](آدرس) */
.cite-chip{ display:inline-flex; align-items:center; gap:5px; font-size:11.5px; font-weight:600; color:var(--text-dim); background:var(--surface-strong); border:1px solid var(--border); padding:3px 11px 3px 9px; border-radius:999px; margin:0 3px; vertical-align:middle; text-decoration:none; transition:.2s var(--ease); direction:ltr; }
.cite-chip:hover{ border-color:var(--gold-2); color:var(--gold-2); background:var(--gold-soft); }
.cite-chip svg{ width:11px; height:11px; flex:none; }

.rename-btn svg, .delete-btn svg{ width:14px; height:14px; }
.icon-btn:hover{ background:#fff; color:var(--text); transform:translateY(-2px) scale(1.05); }
.icon-btn:active{ transform:scale(.92); }
.icon-btn.send{ background:linear-gradient(135deg,var(--gold),var(--gold-2)); color:#fff8ea; box-shadow:0 6px 20px -6px rgba(37,99,235,.6); }
.icon-btn.send:hover{ transform:translateY(-2px) scale(1.1); }
.icon-btn.mic.recording{ background:var(--danger); color:#fff; animation:mic-pulse 1.2s infinite; }
@keyframes mic-pulse{ 0%{ box-shadow:0 0 0 0 rgba(201,67,47,.55); } 70%{ box-shadow:0 0 0 14px rgba(201,67,47,0); } 100%{ box-shadow:0 0 0 0 rgba(201,67,47,0); } }
.composer-hint{ font-size:11px; color:var(--text-dimmer); text-align:center; margin-top:10px; }

/* ===== لایت‌باکس ===== */
.lightbox{ position:fixed; inset:0; background:rgba(10,8,4,.85); backdrop-filter:blur(6px); z-index:80; display:flex; align-items:center; justify-content:center; flex-direction:column; gap:16px; animation:fadeUp .2s var(--ease); }
.lightbox img{ max-width:90vw; max-height:78vh; border-radius:16px; box-shadow:0 30px 80px rgba(0,0,0,.5); }
.lightbox .lightbox-actions{ display:flex; gap:10px; }
.lightbox .close-lb{ position:absolute; top:20px; inset-inline-end:24px; width:40px; height:40px; border-radius:50%; background:#fff; font-size:18px; }

/* ===== مودال اشتراک ===== */
.modal-overlay{ position:fixed; inset:0; background:rgba(10,8,4,.6); backdrop-filter:blur(6px); z-index:80; display:flex; align-items:center; justify-content:center; padding:20px; animation:fadeUp .2s var(--ease); }
.modal-box{ width:100%; max-width:800px; background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-lg); padding:32px; position:relative; max-height:90vh; overflow-y:auto; box-shadow:var(--shadow-lg); }
.modal-box .close-lb{ position:absolute; top:16px; inset-inline-end:16px; width:36px; height:36px; border-radius:50%; background:var(--surface-strong); font-size:16px; }
.modal-title{ text-align:center; margin-bottom:26px; }
.modal-title h2{ font-family:var(--font-display); font-weight:700; font-size:26px; margin-bottom:6px; color:var(--text); display:flex; align-items:center; justify-content:center; gap:10px; }
.modal-title h2 svg{ width:23px; height:23px; color:var(--gold-2); flex:none; }
.modal-title p{ color:var(--text-dim); font-size:13px; }
.btn-back{ display:inline-flex; align-items:center; gap:6px; padding-inline-start:16px; padding-inline-end:20px; margin-bottom:6px; }
.btn-back svg{ width:16px; height:16px; }
html[dir="ltr"] .btn-back svg{ transform:scaleX(-1); }
.settings-row-label{ display:flex; align-items:center; gap:9px; }
.settings-row-label svg{ width:17px; height:17px; color:var(--gold-2); flex:none; }
.tool-banner{ display:flex; align-items:center; gap:12px; padding:13px 22px; background:var(--gold-soft); border-bottom:1px solid var(--border); }
.tool-banner .tb-icon{ width:36px; height:36px; border-radius:11px; background:var(--surface); color:var(--gold-2); display:flex; align-items:center; justify-content:center; flex:none; box-shadow:var(--shadow-sm); }
.tool-banner .tb-icon svg{ width:17px; height:17px; }
.tool-banner .tb-title{ font-weight:800; font-size:13.5px; color:var(--text); }
.tool-banner .tb-desc{ font-size:12px; color:var(--text-dim); }

/* ===== صفحات پرداخت کارت‌به‌کارت / آپلود فیش ===== */
.pay-view{ max-width:480px; margin:0 auto; min-height:100vh; display:flex; flex-direction:column; justify-content:center; padding:40px 20px; gap:6px; }
.pay-back{ align-self:flex-start; margin-bottom:14px; display:inline-flex; align-items:center; gap:6px; }
.pay-back svg{ width:16px; height:16px; }
html[dir="ltr"] .pay-back svg{ transform:scaleX(-1); }
.pay-logo{ width:56px; margin:0 auto 10px; }
.pay-view h2{ font-family:var(--font-display); font-size:24px; color:var(--text); text-align:center; margin-bottom:6px; }
.pay-sub{ color:var(--text-dim); font-size:13.5px; text-align:center; margin-bottom:22px; line-height:1.9; }

/* ===== پنل ادمین ===== */
.admin-panel{ max-width:900px; margin:0 auto; padding:30px 20px 60px; min-height:100vh; }
.admin-topbar{ display:flex; align-items:center; justify-content:space-between; margin-bottom:24px; }
.admin-topbar .brand img{ height:32px; }
.admin-title{ font-family:var(--font-display); font-size:22px; color:var(--text); margin-bottom:18px; }
.admin-empty{ text-align:center; color:var(--text-dimmer); padding:40px; }

/* ===== لودر سراسری ===== */
.page-loader{ position:fixed; inset:0; background:var(--bg); z-index:50; display:flex; align-items:center; justify-content:center; transition:opacity .4s var(--ease); }
.page-loader.hide{ opacity:0; pointer-events:none; }
.spinner{ width:40px; height:40px; border-radius:50%; border:3px solid var(--border); border-top-color:var(--gold); animation:spin 1s linear infinite; }

/* ===== واکنش‌گرا ===== */
@media (max-width:960px){
  .nav-links{ display:none; }
  .nav-toggle{ display:flex; }
  .topbar-actions [data-open-auth]{ display:none; }
  .hero{ flex-direction:column; text-align:center; }
  .hero-copy{ text-align:center; }
  .hero .cta-row, .trust-badges{ justify-content:center; }
  .features-grid{ grid-template-columns:repeat(2,1fr); }
  .why-us{ grid-template-columns:1fr; }
}
@media (min-width:961px){
  .mobile-nav{ display:none !important; }
}
@media (max-width:860px){
  .sidebar{ position:fixed; inset:0 0 0 auto; z-index:20; transform:translateX(100%); transition:transform .3s var(--ease); }
  html[dir="ltr"] .sidebar{ inset:0 auto 0 0; transform:translateX(-100%); }
  .sidebar.open, html[dir="ltr"] .sidebar.open{ transform:translateX(0); }
  .chat-app{ position:relative; }
  .menu-toggle{ display:flex; }
  .chat-topbar{ gap:10px; }
  .view-tab span{ display:none; }
  .view-tab{ padding:9px; }
  .carousel-card{ width:150px; height:150px; }
  .carousel-card img{ height:50px; }
}
@media (max-width:600px){
  .auth-card{ padding:26px 20px; }
  .features-grid{ grid-template-columns:1fr; }
}

/* ============================================================
   🌙 حالت تاریک
   ============================================================ */
html[data-theme="dark"]{
  --bg:#0a0a0c; --bg-soft:#131315; --surface:#131315; --surface-strong:#1c1c1f;
  --border:rgba(255,255,255,.08); --border-strong:rgba(255,255,255,.15);
  --text:#f2f2f4; --text-dim:#a8a8ae; --text-dimmer:#6c6c73;
  --shadow-sm:0 1px 2px rgba(0,0,0,.3);
  --shadow-md:0 10px 30px -12px rgba(0,0,0,.55);
  --shadow-lg:0 30px 70px -24px rgba(0,0,0,.65);
}
html[data-theme="dark"] body{ background:var(--bg); }
html[data-theme="dark"] .bg-fx{ background: radial-gradient(55% 45% at 12% 8%, rgba(37,99,235,.05), transparent 60%), radial-gradient(45% 40% at 92% 12%, rgba(37,99,235,.04), transparent 60%), var(--bg); }
html[data-theme="dark"] .modal-box{ background:var(--surface); color:var(--text); }
html[data-theme="dark"] .pay-copy-field span{ color:var(--text); }

/* ============================================================
   🔘 دکمه‌ی ورود با گوگل
   ============================================================ */
.btn-google{ display:flex; align-items:center; justify-content:center; gap:10px; background:#fff; color:#222; border:1px solid var(--border); border-radius:999px; padding:12px 18px; font-weight:700; font-size:14px; box-shadow:0 2px 6px rgba(0,0,0,.06); transition:.2s var(--ease); pointer-events:none; }
.gbtn-wrap:hover .btn-google{ transform:translateY(-2px); box-shadow:0 8px 20px -6px rgba(0,0,0,.18); }
.gbtn-wrap:active .btn-google{ transform:scale(.97); }
.btn-google img{ width:18px; height:18px; }
/* دکمه‌ی واقعی گوگل (نامرئی) دقیقاً روی دکمه‌ی طراحی‌شده‌ی ما می‌شینه تا هم ظاهر یکدست بمونه هم رفتار ورود دقیقاً همون چیزی باشه که خود گوگل تضمین می‌کنه (مخصوصاً روی موبایل) */
.gbtn-wrap{ position:relative; margin-bottom:0; }
.gbtn-real{ position:absolute; inset:0; opacity:.001; overflow:hidden; border-radius:999px; }
.gbtn-real iframe{ width:100% !important; }
.or-divider{ display:flex; align-items:center; gap:10px; margin:16px 0; color:var(--text-dimmer); font-size:12px; }
.or-divider::before,.or-divider::after{ content:''; flex:1; height:1px; background:var(--border); }

/* ============================================================
   مودال تنظیمات
   ============================================================ */
.settings-box{ max-width:440px; }
.settings-row{ display:flex; align-items:center; justify-content:space-between; padding:17px 6px; border-bottom:1px solid var(--border); }
.settings-row:last-child{ border-bottom:none; }
.settings-row-label{ font-weight:700; font-size:14px; color:var(--text); }
.theme-switch{ position:relative; display:inline-block; width:52px; height:29px; }
.theme-switch input{ opacity:0; width:0; height:0; }
.theme-slider{ position:absolute; cursor:pointer; inset:0; background:var(--surface-strong); border:1px solid var(--border-strong); border-radius:999px; transition:.25s var(--ease); }
.theme-slider::before{
  content:''; position:absolute; height:23px; width:23px; inset-inline-start:2px; top:2px; background:var(--surface); border-radius:50%; transition:.25s var(--ease); box-shadow:var(--shadow-sm);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M12 2v2M12 20v2M4.9 4.9l1.4 1.4M17.7 17.7l1.4 1.4M2 12h2M20 12h2M4.9 19.1l1.4-1.4M17.7 6.3l1.4-1.4'/%3E%3C/svg%3E");
  background-size:14px; background-position:center; background-repeat:no-repeat;
}
.theme-switch input:checked + .theme-slider{ background:var(--dark); border-color:var(--dark); }
.theme-switch input:checked + .theme-slider::before{
  transform:translateX(-23px);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79Z'/%3E%3C/svg%3E");
}
html[dir="ltr"] .theme-switch input:checked + .theme-slider::before{ transform:translateX(23px); }

/* ============================================================
   مودال وضعیت من
   ============================================================ */
.status-usage-box{ background:linear-gradient(160deg,var(--dark),var(--dark-2)); border:1px solid var(--dark); border-radius:var(--radius-md); padding:24px; margin-bottom:22px; text-align:center; position:relative; overflow:hidden; box-shadow:var(--shadow-md); }
.status-usage-box::before{ content:''; position:absolute; inset:0; background:radial-gradient(60% 90% at 50% 0%, rgba(59,130,246,.22), transparent 65%); pointer-events:none; }
.status-usage-box .su-plan{ font-weight:800; font-size:17px; margin-bottom:10px; color:#dbe6f5; position:relative; }
.status-usage-box .su-bar-track{ height:9px; border-radius:999px; background:rgba(255,255,255,.12); overflow:hidden; margin:12px 0; position:relative; }
.status-usage-box .su-bar-fill{ height:100%; background:linear-gradient(90deg,var(--gold-bright),var(--gold-2)); border-radius:999px; transition:width .4s var(--ease); }
.status-usage-box .su-count{ font-size:13px; color:#b7c8e2; position:relative; }
.status-usage-box .su-reset{ font-size:12.5px; color:var(--gold-bright); margin-top:10px; font-weight:700; position:relative; }

/* ============================================================
   پنل ادمین — کاربرا
   ============================================================ */
.admin-tab-panel{ animation:fadeUp .25s var(--ease); }
.admin-user-card{ background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-md); padding:16px 18px; margin-bottom:12px; display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.admin-user-card .au-name{ font-weight:800; }
.admin-user-card .au-meta{ font-size:12px; color:var(--text-dim); }
.admin-user-card .au-plan{ font-size:11.5px; font-weight:700; padding:4px 12px; border-radius:999px; background:var(--gold-soft); color:var(--gold-2); }
