body{font-family:Vazirmatn,Tahoma,"Segoe UI",sans-serif}
.min-w-0{min-width:0}.ltr{direction:ltr;text-align:left}.font-monospace{direction:ltr;display:inline-block}
.brand-logo{display:inline-grid;place-items:center;width:56px;height:56px;border-radius:18px;background:linear-gradient(135deg,#3b5bff,#8a5cff);font-size:28px}
.brand-logo.sm{width:36px;height:36px;border-radius:12px;font-size:18px}
.hero{background:radial-gradient(900px 400px at 85% 0,rgba(138,92,255,.55),transparent),linear-gradient(135deg,#2540d9,#3b5bff 55%,#5b7cff)}
.demo-tail{color:#e5484d;background:rgba(229,72,77,.12);border-radius:8px;padding:0 6px}
.step-no{width:34px;height:34px;border-radius:50%;background:var(--bs-primary-bg-subtle);color:var(--bs-primary);display:inline-grid;place-items:center;font-weight:700}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.auth-wrap{background:radial-gradient(900px 500px at 80% -10%,rgba(59,91,255,.25),transparent),radial-gradient(800px 500px at 0 110%,rgba(18,163,107,.18),transparent),var(--bs-body-bg)}
.otp-box{width:48px;height:58px;font-size:1.4rem;border-radius:14px}
/* panel */
.side{position:sticky;top:0;height:100vh;width:250px;flex:none}
.side-link{color:var(--bs-body-color);font-weight:600;display:flex;align-items:center;gap:8px}.side-link:hover{background:var(--bs-tertiary-bg)}.side-link.on{background:var(--bs-primary-bg-subtle);color:var(--bs-primary)}
.tabbar{position:fixed;inset:auto 0 0 0;z-index:1030;padding:6px 4px calc(6px + env(safe-area-inset-bottom));overflow-x:auto}
.tabbar a{flex:1;min-width:62px;text-align:center;font-size:11px;color:var(--bs-secondary-color);text-decoration:none;font-weight:600}.tabbar a span{display:block;font-size:19px}.tabbar a.on{color:var(--bs-primary)}
.card{--bs-card-border-color:var(--bs-border-color-translucent)}
.stat-v{font-size:1.4rem;font-weight:800}
tr[data-act]{cursor:pointer}
.cc{border-radius:20px;color:#fff;padding:18px;min-height:168px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}
.cc:after{content:"";position:absolute;inset:auto -40px -60px auto;width:180px;height:180px;border-radius:50%;background:rgba(255,255,255,.12)}
.cc .no{font-size:1.2rem;letter-spacing:2px;direction:ltr;text-align:right}.cc.off{filter:grayscale(.9);opacity:.6}
.chat{display:flex;flex-direction:column;gap:10px}.bubble{max-width:85%;border-radius:16px;padding:10px 14px;white-space:pre-wrap;word-break:break-word}
.bubble.me{align-self:flex-start;background:var(--bs-primary-bg-subtle)}.bubble.staff{align-self:flex-end;background:var(--bs-tertiary-bg);border:1px solid var(--bs-border-color)}
.thumb{width:92px;height:92px;object-fit:cover;border-radius:12px;border:1px solid var(--bs-border-color);cursor:zoom-in}
.qr{background:#fff;padding:14px;border-radius:18px;display:inline-block}
pre.code{direction:ltr;text-align:left;background:var(--bs-tertiary-bg);border:1px solid var(--bs-border-color);border-radius:12px;padding:12px;font-size:12px;overflow:auto}
.chart{width:100%;height:190px}.chart text{fill:var(--bs-secondary-color);font-size:11px}
