/* ───── نگاشت سازگاری با توکن‌های Fluent (win11.css) ───── */
:root{
  --bg:var(--solid); --bg2:var(--layer2);
  --panel:var(--card); --panel2:var(--layer2);
  --line:var(--stroke); --line2:var(--stroke-s);
  --acc:var(--accent-l); --acc2:var(--accent);
  --danger:#ff5c72; --purple:#a97bff;
  --shadow:var(--shadow-flyout);
  --r:8px; --r2:6px;
  --font:var(--fs); --mono:var(--fm);
}

/* ═══════════════════════════════════════════
   استایل برنامه‌ها: ترمینال، مرورگر، فایل‌ها، ویرایشگر، تنظیمات
   ═══════════════════════════════════════════ */

/* ═══════ ترمینال ═══════ */
.term{
  direction:ltr;height:100%;display:flex;flex-direction:column;
  background:#060a10;font-family:var(--mono);font-size:13px;line-height:1.65
}
[data-theme="light"] .term{background:#0d1220}
.term-out{flex:1;overflow-y:auto;padding:14px 16px;white-space:pre-wrap;word-break:break-word;color:#c8d6e8}
.term-out .p{color:#25e6a5;font-weight:600}
.term-out .pd{color:#12b1ff}
.term-out .err{color:#ff5c72}
.term-out .ok{color:#25e6a5}
.term-out .wrn{color:#ffb648}
.term-out .dim{color:#5c6f8a}
.term-out .hl{color:#a97bff}
.term-out b{color:#ffffff;font-weight:600}
.term-in{display:flex;align-items:center;gap:8px;padding:9px 16px;border-top:1px solid #182234;background:#0a1018}
.term-ps{color:#25e6a5;font-weight:600;white-space:nowrap;font-size:12.5px}
.term-fld{flex:1;background:none;border:0;outline:none;color:#dbe6f5;font-family:var(--mono);font-size:13px;caret-color:#25e6a5}
.term-keys{display:none;gap:5px;padding:7px 10px;border-top:1px solid #182234;background:#0a1018;overflow-x:auto}
.term-keys button{
  flex:0 0 auto;min-width:36px;padding:7px 10px;border-radius:7px;background:#141d2c;
  border:1px solid #22304a;color:#8b9cb5;font-family:var(--mono);font-size:12.5px
}
.term-keys button:active{background:#25e6a5;color:#04121a}
@media (max-width:820px){ .term-keys{display:flex} .term{font-size:12.5px} }

/* ═══════ مرورگر ═══════ */
.br{height:100%;display:flex;flex-direction:column;background:var(--bg2)}
.br-tabs{display:flex;gap:4px;padding:6px 8px 0;background:var(--panel2);overflow-x:auto;scrollbar-width:none}
.br-tabs::-webkit-scrollbar{display:none}
.br-tab{
  display:flex;align-items:center;gap:7px;padding:7px 12px;border-radius:9px 9px 0 0;
  background:var(--panel);border:1px solid var(--line);border-bottom:0;font-size:12px;
  max-width:180px;white-space:nowrap;flex:0 0 auto;color:var(--txt2)
}
.br-tab.act{background:var(--bg2);color:var(--txt);border-color:var(--line2)}
.br-tab .x{opacity:.5;font-size:14px;line-height:1}
.br-tab .x:hover{opacity:1;color:var(--danger)}
.br-tab .lb{overflow:hidden;text-overflow:ellipsis}
.br-newtab{padding:6px 11px;border-radius:8px;color:var(--txt3);font-size:16px}
.br-newtab:hover{background:var(--panel);color:var(--acc)}
.br-bar{display:flex;align-items:center;gap:6px;padding:8px;background:var(--bg2);border-bottom:1px solid var(--line)}
.br-nav{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;color:var(--txt2);font-size:14px}
.br-nav:hover:not(:disabled){background:var(--panel);color:var(--acc)}
.br-nav:disabled{opacity:.3;cursor:default}
.br-url{
  flex:1;display:flex;align-items:center;gap:8px;padding:6px 13px;border-radius:99px;
  background:var(--panel);border:1px solid var(--line)
}
.br-url:focus-within{border-color:var(--acc)}
.br-lock{font-size:11px;color:var(--warn)}
.br-url input{flex:1;background:none;border:0;outline:none;color:var(--txt);direction:ltr;font-size:12.5px}
.br-view{flex:1;overflow:auto;background:#fff}
[data-theme="dark"] .br-view{background:#f7f9fc}
.br-status{
  padding:4px 12px;font-size:11px;color:var(--txt3);background:var(--panel2);
  border-top:1px solid var(--line);display:flex;justify-content:space-between;direction:ltr
}

/* ═══════ صفحات وب جعلی (همیشه روشن) ═══════ */
.pg{
  min-height:100%;background:#fff;color:#1a2333;direction:rtl;
  font-family:var(--font);font-size:14px;line-height:1.8
}
[dir="ltr"] .pg{direction:ltr}
.pg code{font-family:var(--mono);background:#eef2f8;padding:1px 6px;border-radius:5px;font-size:12.5px;direction:ltr;display:inline-block}
.pg h1{font-size:26px;margin-bottom:8px}
.pg h2{font-size:21px;margin-bottom:12px}
.pg h3{font-size:16px;margin:18px 0 10px}
.pg p{margin-bottom:12px}
.al{padding:11px 15px;border-radius:10px;margin:12px 0;font-size:13px}
.al.ok{background:#e6f9f1;color:#0b6b4a;border:1px solid #a8e6cd}
.al.bad{background:#fdeaec;color:#9b1c2c;border:1px solid #f5b8c0}
.al.warn{background:#fff6e5;color:#8a5a00;border:1px solid #ffdb99}
.flag{
  margin-top:20px;padding:13px;border-radius:10px;background:#0f172a;color:#25e6a5;
  font-family:var(--mono);text-align:center;direction:ltr;font-size:14px;letter-spacing:.5px
}
.tb{width:100%;border-collapse:collapse;margin-top:14px;font-size:13px}
.tb th,.tb td{padding:9px 12px;border:1px solid #e2e8f0;text-align:start}
.tb th{background:#f1f5f9;font-weight:700}

/* خانه مرورگر */
.pg-home{padding:38px 24px;text-align:center;background:linear-gradient(180deg,#f8fbff,#fff)}
.hm-logo{font-size:44px}
.hm-title{font-size:24px;margin:8px 0 20px;color:#0f172a}
.hm-search{display:flex;gap:8px;max-width:520px;margin:0 auto}
.hm-search input{flex:1;padding:12px 18px;border-radius:99px;border:1px solid #cbd5e1;outline:none;font-size:14px}
.hm-search input:focus{border-color:#12b1ff;box-shadow:0 0 0 3px rgba(18,177,255,.15)}
.hm-search button{padding:12px 24px;border-radius:99px;background:#12b1ff;color:#fff;font-weight:700}
.hm-note{margin-top:16px;font-size:12px;color:#64748b}
.hm-h3{margin-top:30px;color:#334155;font-size:14px}
.hm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;max-width:640px;margin:12px auto}
.bk{
  padding:16px 10px;border-radius:14px;border:1px solid #e2e8f0;background:#fff;
  display:flex;flex-direction:column;align-items:center;gap:5px;transition:.15s
}
.bk:hover{border-color:#12b1ff;transform:translateY(-3px);box-shadow:0 8px 20px rgba(18,177,255,.14)}
.bk-i{font-size:26px}
.bk-t{font-size:13px;font-weight:700;color:#0f172a}
.bk-u{font-size:11px;color:#94a3b8;direction:ltr}

/* فروشگاه */
.shp-head{display:flex;justify-content:space-between;align-items:center;padding:14px 22px;background:#0f172a;color:#fff;flex-wrap:wrap;gap:10px}
.shp-logo{font-weight:800;font-size:16px}
.shp-nav{display:flex;gap:16px}
.shp-nav a{color:#cbd5e1;cursor:pointer;font-size:13px}
.shp-nav a:hover{color:#25e6a5}
.shp-body{padding:22px}
.shp-hero{padding:26px;border-radius:16px;background:linear-gradient(135deg,#e0f2fe,#f0fdf4);margin-bottom:20px}
.shp-hero h1{color:#0f172a}
.shp-hero p{color:#475569;margin:0}
.shp-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}
.shp-card{padding:16px;border-radius:14px;border:1px solid #e2e8f0;text-align:center;background:#fff}
.shp-card .ph{font-size:34px;margin-bottom:6px}
.shp-card b{display:block;font-size:14px}
.shp-card span{font-size:12px;color:#64748b}
.shp-foot{padding:16px 22px;background:#f1f5f9;color:#94a3b8;font-size:12px;text-align:center}

/* فرم ورود */
.lg-box{max-width:340px;margin:44px auto;padding:28px;border-radius:18px;border:1px solid #e2e8f0;box-shadow:0 10px 30px rgba(15,23,42,.07)}
.lg-ic{font-size:34px;text-align:center}
.lg-box h2{text-align:center;margin:8px 0 18px;color:#0f172a}
.lg-box label{display:block;font-size:12.5px;color:#475569;margin:10px 0 5px;font-weight:600}
.lg-box input{width:100%;padding:11px 14px;border-radius:10px;border:1px solid #cbd5e1;outline:none;direction:ltr;font-size:13px}
.lg-box input:focus{border-color:#12b1ff;box-shadow:0 0 0 3px rgba(18,177,255,.14)}
.lg-btn{width:100%;margin-top:16px;padding:12px;border-radius:10px;background:#0f172a;color:#fff;font-weight:700}
.lg-btn:hover{background:#1e293b}
.lg-hint{margin-top:14px;font-size:12px;color:#94a3b8;text-align:center}

/* مدرسه */
.sc-head{padding:16px 22px;background:linear-gradient(135deg,#1e3a8a,#2563eb);color:#fff}
.sc-logo{font-weight:800;font-size:17px}
.sc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}
.sc-box{padding:18px;border-radius:14px;border:1px solid #e2e8f0;background:#fff}
.sc-box h3{margin:0 0 8px;font-size:15px}
.sc-box p{margin:0;font-size:13px;color:#475569}

/* ایمیل */
.ml-head{padding:16px 22px;background:#f8fafc;border-bottom:1px solid #e2e8f0;font-weight:800;display:flex;justify-content:space-between}
.ml-c{font-weight:400;font-size:12px;color:#94a3b8}
.ml-list{padding:14px}
.ml-item{padding:15px;border-radius:13px;border:1px solid #e2e8f0;margin-bottom:10px;background:#fff}
.ml-f{font-weight:800;font-size:13px;color:#0f172a}
.ml-s{font-size:14px;margin:3px 0;color:#1e293b}
.ml-t{font-size:12.5px;color:#64748b;word-break:break-word}
.ml-act{display:flex;gap:8px;margin-top:10px}
.ml-act button{padding:7px 14px;border-radius:9px;border:1px solid #cbd5e1;font-size:12px;background:#fff}
.ml-act button:hover{border-color:#12b1ff;color:#12b1ff}
.ml-res{margin-top:9px;font-size:12.5px;font-weight:600}
.ml-res.ok{color:#0b6b4a}.ml-res.bad{color:#9b1c2c}

/* وبلاگ */
.bl-wrap{max-width:640px;margin:0 auto;padding:30px 22px}
.bl-meta{color:#94a3b8;font-size:12px;margin-bottom:18px}
.bl-comments{margin:12px 0}
.cm{padding:12px 15px;border-radius:11px;background:#f8fafc;margin-bottom:8px;border:1px solid #eef2f7}
.cm b{font-size:13px;color:#0f172a}
.cm p{margin:3px 0 0;font-size:13px;color:#475569}
.bl-form{display:flex;flex-direction:column;gap:8px;margin-top:14px}
.bl-form input,.bl-form textarea{padding:11px 14px;border-radius:10px;border:1px solid #cbd5e1;outline:none;font-family:inherit;font-size:13px}
.bl-form textarea{min-height:80px;resize:vertical}
.bl-form button{padding:11px;border-radius:10px;background:#12b1ff;color:#fff;font-weight:700}

/* ۴۰۴ */
.e404{max-width:420px;margin:70px auto;text-align:center;color:#475569}
.e-ic{font-size:52px;opacity:.5}
.e404 h2{color:#0f172a;margin:12px 0}
.e-note{font-size:12.5px;color:#94a3b8;margin-top:16px}

/* ═══════ فایل منیجر ═══════ */
.fm{height:100%;display:flex;flex-direction:column}
.fm-bar{display:flex;align-items:center;gap:6px;padding:9px 11px;border-bottom:1px solid var(--line);background:var(--panel2)}
.fm-btn{width:29px;height:29px;border-radius:8px;display:grid;place-items:center;color:var(--txt2)}
.fm-btn:hover{background:var(--panel);color:var(--acc)}
.fm-path{flex:1;padding:6px 13px;border-radius:8px;background:var(--bg2);border:1px solid var(--line);
  font-family:var(--mono);font-size:12px;direction:ltr;color:var(--txt2);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.fm-main{flex:1;display:flex;overflow:hidden}
.fm-side{width:170px;flex:0 0 auto;border-inline-end:1px solid var(--line);padding:9px;overflow:auto;background:var(--panel2)}
.fm-side button{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border-radius:8px;font-size:12.5px;color:var(--txt2)}
.fm-side button:hover{background:var(--panel);color:var(--acc)}
.fm-grid{flex:1;overflow:auto;padding:13px;display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:7px;align-content:start}
.fitem{padding:12px 6px;border-radius:11px;text-align:center;display:flex;flex-direction:column;
  align-items:center;gap:6px;border:1px solid transparent;transition:.13s}
.fitem:hover{background:var(--panel2);border-color:var(--line)}
.fitem .i{font-size:30px}
.fitem .n{font-size:11.5px;word-break:break-word;line-height:1.35;color:var(--txt)}
.fm-status{padding:5px 13px;font-size:11px;color:var(--txt3);border-top:1px solid var(--line);background:var(--panel2)}
@media (max-width:820px){ .fm-side{display:none} }

/* ═══════ ویرایشگر متن ═══════ */
.ed{height:100%;display:flex;flex-direction:column}
.ed-bar{display:flex;align-items:center;gap:8px;padding:8px 11px;border-bottom:1px solid var(--line);background:var(--panel2);font-size:12px;color:var(--txt2)}
.ed-bar button{padding:6px 13px;border-radius:8px;background:var(--panel);border:1px solid var(--line);font-size:12px}
.ed-bar button:hover{border-color:var(--acc);color:var(--acc)}
.ed-area{flex:1;width:100%;padding:16px;background:var(--bg2);color:var(--txt);border:0;outline:none;
  resize:none;font-family:var(--mono);font-size:13px;line-height:1.8;direction:ltr;text-align:left}

/* ═══════ تنظیمات ═══════ */
.se{height:100%;display:flex;overflow:hidden}
.se-side{width:170px;flex:0 0 auto;border-inline-end:1px solid var(--line);padding:11px;background:var(--panel2);overflow:auto}
.se-side button{display:flex;align-items:center;gap:9px;width:100%;padding:9px 11px;border-radius:9px;
  font-size:12.5px;color:var(--txt2);margin-bottom:3px}
.se-side button.act{background:var(--panel);color:var(--acc);border:1px solid var(--line)}
.se-side button:hover{color:var(--acc)}
.se-body{flex:1;padding:22px;overflow:auto}
.se-h{font-size:17px;font-weight:800;margin-bottom:16px}
.se-row{display:flex;justify-content:space-between;align-items:center;gap:14px;
  padding:14px;border-radius:12px;background:var(--panel2);border:1px solid var(--line);margin-bottom:9px}
.se-row .lb{font-size:13px;font-weight:600}
.se-row .ds{font-size:11.5px;color:var(--txt3)}
.se-row select,.se-row input[type=text]{padding:7px 11px;border-radius:8px;background:var(--bg2);
  border:1px solid var(--line);color:var(--txt);outline:none;font-size:12.5px}
.sw{width:46px;height:25px;border-radius:99px;background:var(--line);position:relative;transition:.2s;flex:0 0 auto}
.sw.on{background:var(--acc)}
.sw i{position:absolute;top:3px;inset-inline-start:3px;width:19px;height:19px;border-radius:50%;background:#fff;transition:.2s}
.sw.on i{inset-inline-start:24px}
.se-danger{padding:11px 20px;border-radius:10px;background:var(--danger);color:#fff;font-weight:700;font-size:12.5px}
.se-about{text-align:center;padding:26px}
.se-about .lg{font-size:52px}
.se-about h2{margin:10px 0 4px}
.se-about p{color:var(--txt2);font-size:12.5px;margin-bottom:4px}
@media (max-width:820px){ .se{flex-direction:column} .se-side{width:auto;display:flex;gap:5px;overflow-x:auto;border-inline-end:0;border-bottom:1px solid var(--line)} .se-side button{width:auto;white-space:nowrap} }

/* ═══════ ماشین‌حساب / یادداشت / کمکی ═══════ */
.pad{padding:20px}
.pad h2{font-size:18px;margin-bottom:12px}
.pad p{color:var(--txt2);font-size:13px;margin-bottom:10px}
.card-list{display:grid;gap:10px}
.ccard{padding:16px;border-radius:13px;background:var(--panel2);border:1px solid var(--line)}
.ccard h3{font-size:14px;margin-bottom:6px}
.ccard p{font-size:12.5px;color:var(--txt2);margin:0}
.note-area{width:100%;height:100%;padding:18px;background:var(--bg2);color:var(--txt);
  border:0;outline:none;resize:none;font-family:inherit;font-size:14px;line-height:2}

/* ═══════════════════════════════════════════
   File Explorer — سبک ویندوز ۱۱
   ═══════════════════════════════════════════ */
.ex{height:100%;display:flex;flex-direction:column;background:var(--solid)}
.ex-cmd{
  height:44px;flex:0 0 auto;display:flex;align-items:center;gap:3px;padding:0 9px;
  border-bottom:1px solid var(--divider);background:var(--layer)
}
.ex-b{
  height:32px;min-width:32px;padding:0 9px;border-radius:var(--r-ctrl);display:flex;
  align-items:center;gap:7px;font-size:12px;color:var(--txt);transition:background var(--t-fast)
}
.ex-b:hover{background:var(--hover)}
.ex-b:disabled{opacity:.36}
.ex-b .i{font-size:14px}
.ex-sep{width:1px;height:18px;background:var(--divider);margin:0 5px}
.ex-nav{
  height:42px;flex:0 0 auto;display:flex;align-items:center;gap:4px;padding:0 9px;
  border-bottom:1px solid var(--divider)
}
.ex-crumb{
  flex:1;height:30px;display:flex;align-items:center;gap:2px;padding:0 10px;
  background:var(--layer2);border:1px solid var(--stroke);border-radius:var(--r-ctrl);
  font-size:12px;overflow:hidden;white-space:nowrap;direction:ltr
}
.ex-crumb .c{padding:2px 7px;border-radius:3px;color:var(--txt2)}
.ex-crumb .c:hover{background:var(--hover);color:var(--txt)}
.ex-crumb .sp{color:var(--txt3);font-size:10px}
.ex-search{
  width:190px;height:30px;display:flex;align-items:center;gap:7px;padding:0 10px;
  background:var(--layer2);border:1px solid var(--stroke);border-radius:var(--r-ctrl);
  font-size:12px;color:var(--txt3)
}
.ex-search input{flex:1;background:none;border:0;outline:none;color:var(--txt);font-size:12px;min-width:0}
.ex-main{flex:1;display:flex;overflow:hidden}
.ex-side{
  width:200px;flex:0 0 auto;overflow-y:auto;padding:8px 6px;
  border-inline-end:1px solid var(--divider);background:var(--layer2)
}
.ex-grp{font-size:10.5px;color:var(--txt3);padding:9px 12px 4px;font-weight:600}
.ex-item{
  display:flex;align-items:center;gap:10px;width:100%;height:32px;padding:0 12px;
  border-radius:var(--r-ctrl);font-size:12.5px;color:var(--txt2);text-align:start
}
.ex-item:hover{background:var(--hover);color:var(--txt)}
.ex-item.act{background:var(--card);color:var(--txt)}
.ex-item .i{font-size:15px;width:18px;text-align:center;flex:0 0 auto}
.ex-view{flex:1;overflow-y:auto;padding:12px}
.ex-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:4px;align-content:start}
.ex-f{
  padding:12px 6px;border-radius:var(--r-ctrl);display:flex;flex-direction:column;
  align-items:center;gap:7px;border:1px solid transparent;transition:var(--t-fast)
}
.ex-f:hover{background:var(--hover)}
.ex-f.sel{background:rgba(0,120,212,.24);border-color:rgba(76,194,255,.4)}
.ex-f .i{font-size:36px;line-height:1}
.ex-f .n{font-size:11.5px;color:var(--txt);text-align:center;line-height:1.4;word-break:break-word;
  max-height:2.9em;overflow:hidden}
.ex-list{display:flex;flex-direction:column}
.ex-r{
  display:flex;align-items:center;gap:12px;height:34px;padding:0 12px;border-radius:var(--r-ctrl);font-size:12.5px
}
.ex-r:hover{background:var(--hover)}
.ex-r.sel{background:rgba(0,120,212,.24)}
.ex-r .i{font-size:17px;flex:0 0 auto}
.ex-r .n{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:start}
.ex-r .m{width:110px;color:var(--txt3);font-size:11.5px;text-align:left;direction:ltr}
.ex-r .z{width:76px;color:var(--txt3);font-size:11.5px;text-align:left;direction:ltr}
.ex-head{display:flex;align-items:center;gap:12px;padding:0 12px 7px;font-size:11px;color:var(--txt3);
  border-bottom:1px solid var(--divider);margin-bottom:5px}
.ex-head .n{flex:1;text-align:start}
.ex-head .m{width:110px;text-align:left}
.ex-head .z{width:76px;text-align:left}
.ex-empty{text-align:center;color:var(--txt3);padding:44px;font-size:12.5px;grid-column:1/-1}
.ex-status{
  height:26px;flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;
  padding:0 14px;font-size:11.5px;color:var(--txt3);border-top:1px solid var(--divider);background:var(--layer2)
}
@media (max-width:860px){ .ex-side{display:none} .ex-search{width:44px} .ex-search input{display:none} }

/* ═══════ آزمایشگاه وب: XSS، آپلود، کوکی ═══════ */
.cm.xss{border-color:#f5b8c0;background:#fdeaec}
.cm.safe{border-color:#a8e6cd;background:#e6f9f1}
.xss-sim{
  margin:6px 0;padding:8px 12px;border-radius:8px;background:#9b1c2c;color:#fff;
  font-size:12px;font-weight:700
}
.xss-safe{
  margin:6px 0;padding:8px 12px;border-radius:8px;background:#0b6b4a;color:#fff;
  font-size:12px;font-weight:700
}
.xss-code{
  font-family:var(--mono);font-size:11.5px;background:#0f172a;color:#ff8fa3;
  padding:8px 11px;border-radius:7px;overflow-x:auto;white-space:pre-wrap;word-break:break-all
}
.up-box,.cookie-box{
  max-width:420px;padding:18px;border-radius:14px;border:1px solid #e2e8f0;margin:14px 0;background:#fff
}
.up-box label{display:block;font-size:12.5px;color:#475569;margin-bottom:6px;font-weight:600}
.up-box input,.cookie-box input{
  width:100%;padding:11px 14px;border-radius:10px;border:1px solid #cbd5e1;outline:none;
  direction:ltr;font-size:13px;font-family:var(--mono)
}
.up-list{display:grid;gap:7px;margin-top:10px}
.up-item{
  display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:10px;
  background:#f8fafc;border:1px solid #eef2f7;font-size:13px
}

/* ═══════════════════════════════════════════
   بازرس HTTP
   ═══════════════════════════════════════════ */
.ins{height:100%;display:flex;background:var(--solid);overflow:hidden}
.ins-side{width:270px;flex:0 0 auto;border-inline-end:1px solid var(--divider);
  background:var(--layer2);display:flex;flex-direction:column;overflow:hidden}
.ins-h{padding:10px 13px;font-size:11.5px;font-weight:600;color:var(--txt2);
  border-bottom:1px solid var(--divider);display:flex;align-items:center;justify-content:space-between}
.ins-x{font-size:11px;color:var(--txt3)}
.ins-x:hover{color:var(--danger)}
.ins-log{flex:1;overflow-y:auto;padding:6px}
.ins-item,.ins-sample{
  display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border-radius:7px;
  font-size:11.5px;margin-bottom:3px;text-align:start;direction:ltr
}
.ins-item:hover,.ins-sample:hover{background:var(--hover)}
.ins-item .mm,.ins-sample .mm{
  font-family:var(--fm);font-size:10px;padding:2px 6px;border-radius:4px;
  background:var(--stroke-s);color:var(--txt2);flex:0 0 auto
}
.ins-item .pp{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--fm)}
.ins-item .ss{font-family:var(--fm);font-size:10.5px}
.ins-item.ok .ss{color:var(--ok)} .ins-item.bad .ss{color:#ff8fa3} .ins-item.warn .ss{color:#ffd166}
.ins-samples{max-height:210px;overflow-y:auto;padding:6px}
.ins-sample span:last-child{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--fm);font-size:11px}
.ins-empty{padding:20px 14px;font-size:11.5px;color:var(--txt3);line-height:1.8}
.ins-main{flex:1;display:flex;flex-direction:column;overflow:hidden}
.ins-bar{display:flex;gap:8px;padding:11px;border-bottom:1px solid var(--divider);background:var(--layer)}
.ins-bar select{padding:0 10px;border-radius:var(--r-ctrl);background:var(--layer2);
  border:1px solid var(--stroke-s);color:var(--txt);font-family:var(--fm);font-size:12.5px}
.ins-bar input{flex:1;padding:9px 13px;border-radius:var(--r-ctrl);background:var(--layer2);
  border:1px solid var(--stroke-s);color:var(--txt);outline:none;font-family:var(--fm);font-size:12.5px}
.ins-bar input:focus{border-color:var(--accent)}
.ins-split{flex:1;display:flex;overflow:hidden}
.ins-pane{flex:1;display:flex;flex-direction:column;padding:12px;overflow:hidden;min-width:0}
.ins-pane + .ins-pane{border-inline-start:1px solid var(--divider)}
.ins-t{font-size:12px;font-weight:600;margin-bottom:9px;display:flex;align-items:center;gap:8px}
.ins-t span{font-family:var(--fm);font-size:11px;padding:2px 8px;border-radius:99px;background:var(--stroke-s)}
.ins-t span.ok{background:rgba(108,203,95,.2);color:var(--ok)}
.ins-t span.bad{background:rgba(255,92,114,.2);color:#ff8fa3}
.ins-t span.warn{background:rgba(255,209,102,.2);color:#ffd166}
.ins-pane label{font-size:10.5px;color:var(--txt3);margin:8px 0 4px}
.ins-pane textarea{
  background:#0d1117;border:1px solid var(--stroke);border-radius:7px;color:#c9d1d9;
  font-family:var(--fm);font-size:12px;padding:9px 11px;outline:none;resize:none;line-height:1.7
}
.ins-pane textarea:first-of-type{height:96px}
.ins-pane textarea:last-of-type{flex:1;min-height:60px}
.ins-pane pre{
  flex:1;overflow:auto;background:#0d1117;border:1px solid var(--stroke);border-radius:7px;
  color:#c9d1d9;font-family:var(--fm);font-size:12px;padding:11px;margin:0;
  white-space:pre-wrap;word-break:break-word;line-height:1.7
}
.ins-foot{padding:8px 13px;border-top:1px solid var(--divider);background:var(--layer2);
  font-size:11px;color:var(--txt3)}
@media (max-width:860px){
  .ins{flex-direction:column}
  .ins-side{width:auto;max-height:180px;border-inline-end:0;border-bottom:1px solid var(--divider)}
  .ins-samples{max-height:none}
  .ins-split{flex-direction:column}
  .ins-pane + .ins-pane{border-inline-start:0;border-top:1px solid var(--divider)}
  .ins-pane textarea:first-of-type{height:64px}
}

/* ═══════════════════════════════════════════
   Python IDE
   ═══════════════════════════════════════════ */
.py{height:100%;display:flex;flex-direction:column;background:var(--solid);overflow:hidden}
.py-bar{display:flex;align-items:center;gap:8px;padding:10px 12px;
  border-bottom:1px solid var(--divider);background:var(--layer)}
.py-bar select{padding:6px 10px;border-radius:var(--r-ctrl);background:var(--layer2);
  border:1px solid var(--stroke-s);color:var(--txt);font-size:12px}
.py-path{font-family:var(--fm);font-size:11px;color:var(--txt3);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px}
.py-main{flex:1;display:flex;overflow:hidden}
.py-edit{flex:1.35;display:flex;overflow:hidden;background:#0d1117;min-width:0}
.py-gut{
  width:48px;flex:0 0 auto;padding:14px 8px 14px 0;text-align:right;overflow:hidden;
  font-family:var(--fm);font-size:12.5px;line-height:1.75;color:#4b5563;
  background:#0b0f14;border-inline-end:1px solid #1b222c;white-space:pre;direction:ltr
}
.py-edit textarea{
  flex:1;background:#0d1117;border:0;outline:none;resize:none;color:#e6edf3;
  font-family:var(--fm);font-size:12.5px;line-height:1.75;padding:14px 14px 14px 10px;
  direction:ltr;text-align:left;tab-size:4
}
.py-out{flex:1;display:flex;flex-direction:column;border-inline-start:1px solid var(--divider);min-width:0}
.py-oh{padding:9px 13px;font-size:11.5px;font-weight:600;color:var(--txt2);
  border-bottom:1px solid var(--divider);background:var(--layer2);
  display:flex;align-items:center;justify-content:space-between}
.py-out pre{
  flex:1;margin:0;overflow:auto;padding:13px;background:#0b0f14;color:#c9d1d9;
  font-family:var(--fm);font-size:12.5px;line-height:1.8;white-space:pre-wrap;word-break:break-word;direction:ltr
}
.py-out pre.bad{color:#ff8fa3}
.py-status{padding:6px 13px;font-size:11px;color:var(--txt3);
  border-top:1px solid var(--divider);background:var(--layer2)}
@media (max-width:860px){
  .py-main{flex-direction:column}
  .py-edit{flex:1;min-height:44vh}
  .py-out{border-inline-start:0;border-top:1px solid var(--divider);min-height:26vh}
  .py-gut{width:38px;font-size:12px}
  .py-edit textarea{font-size:13px}
  .py-bar{overflow-x:auto;scrollbar-width:none}
  .py-bar::-webkit-scrollbar{display:none}
  .py-path{display:none}
}

/* ═══════════════════════════════════════════
   فایل‌کاو · نقشه شبکه · کاوشگر بلاکچین
   ═══════════════════════════════════════════ */
.fi,.nw,.ch{height:100%;display:flex;background:var(--solid);overflow:hidden}
.fi-side,.ch-side{width:250px;flex:0 0 auto;background:var(--layer2);
  border-inline-end:1px solid var(--divider);display:flex;flex-direction:column;overflow:hidden}
.fi-list,.ch-list{flex:1;overflow-y:auto;padding:6px}
.ch-list{flex:none;max-height:190px}
.fi-item,.ch-item{
  display:flex;align-items:center;gap:9px;width:100%;padding:9px 10px;border-radius:7px;
  font-size:12px;margin-bottom:3px;text-align:start
}
.fi-item:hover,.ch-item:hover{background:var(--hover)}
.fi-item.sel{background:var(--card);border:1px solid var(--stroke-s)}
.fi-item .i{font-size:16px}
.fi-item .n{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--fm);font-size:11.5px}
.fi-note{padding:11px 13px;font-size:10.5px;color:var(--txt3);line-height:1.7;border-top:1px solid var(--divider)}
.fi-main,.ch-main{flex:1;overflow-y:auto;padding:20px}
.fi-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:12px;height:100%;color:var(--txt3);font-size:13px;text-align:center;padding:30px}
.fi-empty:first-line{font-size:40px}
.fi-head,.ch-head{display:flex;align-items:center;gap:14px;padding-bottom:14px;
  border-bottom:1px solid var(--divider);margin-bottom:16px}
.fi-head .ic,.ch-head .i{font-size:34px}
.fi-head .nm,.ch-head .nm{font-size:15px;font-weight:600;font-family:var(--fm)}
.fi-head .pt,.ch-head .pt{font-size:11px;color:var(--txt3);font-family:var(--fm);margin-top:2px}
.fi-risk{margin-inline-start:auto;padding:4px 12px;border-radius:99px;font-size:11px;font-weight:600}
.fi-risk.ok{background:rgba(108,203,95,.18);color:var(--ok)}
.fi-risk.warn{background:rgba(255,209,102,.18);color:#ffd166}
.fi-risk.bad{background:rgba(255,92,114,.18);color:#ff8fa3}
.fi-sec{margin-bottom:18px}
.fi-t{font-size:12px;font-weight:600;color:var(--txt2);margin-bottom:8px}
.fi-tbl{width:100%;border-collapse:collapse;font-size:12px}
.fi-tbl td,.fi-tbl th{padding:7px 11px;border:1px solid var(--stroke);text-align:start}
.fi-tbl td:first-child,.fi-tbl th{color:var(--txt3);width:38%;background:var(--layer2)}
.fi-hash{display:flex;gap:8px;align-items:center}
.fi-hash code{flex:1;font-family:var(--fm);font-size:11px;background:#0d1117;color:#7ee787;
  padding:9px 11px;border-radius:7px;overflow-x:auto;white-space:nowrap;direction:ltr}
.fi-sig{list-style:none;display:grid;gap:7px}
.fi-sig li{padding:10px 13px;border-radius:8px;font-size:12.5px;line-height:1.7}
.fi-sig li.l1{background:rgba(255,209,102,.12);border:1px solid rgba(255,209,102,.3)}
.fi-sig li.l2{background:rgba(255,92,114,.12);border:1px solid rgba(255,92,114,.35)}
.fi-str{background:#0d1117;color:#c9d1d9;border-radius:8px;padding:12px;margin:0;
  font-family:var(--fm);font-size:11.5px;line-height:1.8;max-height:220px;overflow:auto;
  white-space:pre-wrap;word-break:break-all;direction:ltr}

/* نقشه شبکه */
.nw-map{flex:1;overflow-y:auto;padding:20px;min-width:0}
.nw-side{width:310px;flex:0 0 auto;border-inline-start:1px solid var(--divider);
  background:var(--layer2);display:flex;flex-direction:column;overflow:hidden}
.nw-det{padding:14px;overflow-y:auto;max-height:56%}
.nw-seg{border:1px dashed var(--stroke-s);border-radius:12px;padding:14px}
.nw-segt{font-size:11.5px;color:var(--txt3);margin-bottom:12px;font-family:var(--fm)}
.nw-nodes{display:flex;flex-wrap:wrap;gap:10px}
.nw-node{
  width:104px;padding:12px 6px;border-radius:10px;background:var(--card);
  border:1px solid var(--stroke);display:flex;flex-direction:column;align-items:center;gap:5px;
  transition:var(--t-fast)
}
.nw-node:hover{border-color:var(--stroke-s);transform:translateY(-2px)}
.nw-node.sel{border-color:var(--accent);background:rgba(0,120,212,.14)}
.nw-node.down{opacity:.45}
.nw-node.rogue{border-color:rgba(255,92,114,.5)}
.nw-node .i{font-size:24px}
.nw-node .ip{font-family:var(--fm);font-size:11px;color:var(--txt)}
.nw-node .rl{font-size:10px;color:var(--txt3);text-align:center}
.nw-link{text-align:center;color:var(--txt3);font-size:20px;line-height:1;padding:6px 0}
.nw-note{margin-top:16px;font-size:10.5px;color:var(--txt3)}
.nw-dh{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.nw-dh .i{font-size:28px}
.nw-dh .ip{font-family:var(--fm);font-size:14px;font-weight:600}
.nw-dh .rl{font-size:11px;color:var(--txt3)}
.nw-btns{display:flex;gap:6px;margin-top:12px}
.nw-btns .btn{flex:1;font-size:11.5px;padding:0 8px}
.nw-con{flex:1;margin:0;overflow:auto;padding:12px;background:#0b0f14;color:#c9d1d9;
  font-family:var(--fm);font-size:11.5px;line-height:1.8;white-space:pre-wrap;direction:ltr}
.nw-con .g{color:#6ccb5f}.nw-con .r{color:#ff8fa3}.nw-con .y{color:#ffd166}.nw-con .d{color:#6e7681}

/* بلاکچین */
.ch-search{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--divider)}
.ch-search input{flex:1;background:var(--layer);border:1px solid var(--stroke-s);border-radius:var(--r-ctrl);
  padding:7px 10px;color:var(--txt);outline:none;font-family:var(--fm);font-size:11.5px;min-width:0}
.ch-item .a{flex:1;font-family:var(--fm);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ch-item .l{font-size:10.5px;color:var(--txt3)}
.ch-item.susp .a{color:#ffd166}
.ch-item.exch .a{color:#4cc2ff}
.ch-tbl th{font-size:10.5px}
.ch-tbl .tx{cursor:default}
.ch-tbl .tx:hover td{background:var(--hover)}
.ch-a{color:var(--accent-l);cursor:default}
.ch-a:hover{text-decoration:underline}
.ch-path{display:flex;flex-direction:column;align-items:stretch;gap:0}
.ch-hop{display:flex;align-items:center;gap:11px;padding:12px 14px;border-radius:10px;
  background:var(--card);border:1px solid var(--stroke)}
.ch-hop.susp{border-color:rgba(255,209,102,.4)}
.ch-hop.exch{border-color:rgba(76,194,255,.45)}
.ch-hop .n{width:22px;height:22px;border-radius:50%;background:var(--accent);color:#fff;
  font-size:11px;display:grid;place-items:center;flex:0 0 auto}
.ch-hop .a{flex:1;font-family:var(--fm);font-size:11px;overflow:hidden;text-overflow:ellipsis}
.ch-hop .l{font-size:10.5px;color:var(--txt3)}
.ch-arrow{text-align:center;color:var(--txt3);font-size:11px;padding:6px 0;font-family:var(--fm)}

@media (max-width:860px){
  .fi,.nw,.ch{flex-direction:column}
  .fi-side,.ch-side,.nw-side{width:auto;max-height:200px;border-inline-end:0;
    border-block-end:1px solid var(--divider)}
  .nw-side{order:2;max-height:none;flex:1;border-block-start:1px solid var(--divider);border-block-end:0}
  .nw-map{flex:none;max-height:44vh}
  .nw-det{max-height:none}
  .nw-con{min-height:140px}
  .ch-list{max-height:110px}
  .fi-main,.ch-main{padding:14px}
  .nw-node{width:calc(33.33% - 7px)}
}

/* ═══════════ نمایشگر بسته (PCAP) ═══════════ */
.pc{height:100%;display:flex;background:var(--solid);overflow:hidden}
.pc-side{width:230px;flex:0 0 auto;background:var(--layer2);border-inline-end:1px solid var(--divider);
  display:flex;flex-direction:column;overflow:hidden}
.pc-caps{flex:1;overflow-y:auto;padding:6px}
.pc-cap{display:flex;flex-direction:column;gap:3px;width:100%;padding:10px 11px;border-radius:8px;
  text-align:start;margin-bottom:4px;border:1px solid transparent}
.pc-cap:hover{background:var(--hover)}
.pc-cap.sel{background:var(--card);border-color:var(--stroke-s)}
.pc-cap .n{font-family:var(--fm);font-size:11.5px;color:var(--txt)}
.pc-cap .d{font-size:11px;color:var(--txt2)}
.pc-cap .c{font-size:10px;color:var(--txt3);font-family:var(--fm)}
.pc-main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}
.pc-bar{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--divider);background:var(--layer)}
.pc-bar input{flex:1;padding:8px 12px;border-radius:var(--r-ctrl);background:var(--layer2);
  border:1px solid var(--stroke-s);color:var(--txt);outline:none;font-family:var(--fm);font-size:12px;min-width:0}
.pc-bar input:focus{border-color:var(--accent)}
.pc-list{flex:1.1;overflow:auto;font-family:var(--fm);font-size:11.5px;min-height:120px}
.pc-row{display:flex;gap:0;padding:5px 10px;border-bottom:1px solid var(--divider);direction:ltr;white-space:nowrap}
.pc-row.head{position:sticky;top:0;background:var(--layer2);color:var(--txt3);font-weight:600;z-index:1}
.pc-row:not(.head):hover{background:var(--hover)}
.pc-row.sel{background:rgba(0,120,212,.18)}
.pc-row.bad{background:rgba(255,92,114,.10)}
.pc-row.warn{background:rgba(255,209,102,.09)}
.pc-row .c0{width:42px}.pc-row .c1{width:66px}.pc-row .c2,.pc-row .c3{width:104px}
.pc-row .c4{width:52px}.pc-row .c5{width:44px}
.pc-row .c6{flex:1;overflow:hidden;text-overflow:ellipsis}
.pc-det{flex:1;overflow:auto;border-top:1px solid var(--divider);padding:12px;min-height:120px}
.pc-dh{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:600;margin-bottom:10px}
.pc-dh .btn{margin-inline-start:auto;font-size:11.5px;height:28px;padding:0 12px}
.pc-layers{display:grid;gap:4px;margin-bottom:10px}
.pc-l{padding:7px 11px;border-radius:6px;background:var(--layer2);border:1px solid var(--stroke);
  font-family:var(--fm);font-size:11px;direction:ltr;color:var(--txt2)}
.pc-l b{color:var(--txt)}
.pc-body{background:#0d1117;color:#c9d1d9;border-radius:8px;padding:11px;margin:0 0 10px;
  font-family:var(--fm);font-size:11.5px;line-height:1.75;white-space:pre-wrap;word-break:break-all;
  max-height:170px;overflow:auto;direction:ltr}
.pc-body.big{max-height:none}
.pc-status{padding:6px 12px;font-size:11px;color:var(--txt3);border-top:1px solid var(--divider);background:var(--layer2)}

/* ═══════════ SIEM ═══════════ */
.sm{height:100%;display:flex;background:var(--solid);overflow:hidden}
.sm-side{width:330px;flex:0 0 auto;background:var(--layer2);border-inline-end:1px solid var(--divider);
  display:flex;flex-direction:column;overflow:hidden}
.sm-tabs{display:flex;gap:4px;padding:9px;border-bottom:1px solid var(--divider)}
.sm-tabs button{flex:1;padding:7px 4px;border-radius:var(--r-ctrl);font-size:11.5px;color:var(--txt2)}
.sm-tabs button:hover{background:var(--hover)}
.sm-tabs button.on{background:var(--card);color:var(--txt);border:1px solid var(--stroke-s)}
.sm-filters{display:flex;gap:4px;padding:8px 9px;flex-wrap:wrap;border-bottom:1px solid var(--divider)}
.sm-fb{padding:4px 11px;border-radius:99px;font-size:10.5px;background:var(--card);
  border:1px solid var(--stroke);color:var(--txt2)}
.sm-fb.on{background:var(--accent);border-color:transparent;color:#fff}
.sm-list{flex:1;overflow-y:auto;padding:6px}
.sm-a{display:flex;align-items:flex-start;gap:9px;width:100%;padding:9px 10px;border-radius:8px;
  text-align:start;margin-bottom:4px;border-inline-start:3px solid var(--stroke-s)}
.sm-a:hover{background:var(--hover)}
.sm-a.sel{background:var(--card)}
.sm-a.inc{box-shadow:inset 0 0 0 1px rgba(108,203,95,.4)}
.sm-a.crit{border-inline-start-color:#ff5c72}
.sm-a.high{border-inline-start-color:#ffb648}
.sm-a.med{border-inline-start-color:#ffd166}
.sm-a.low{border-inline-start-color:#6ccb5f}
.sm-a .tm{font-family:var(--fm);font-size:10.5px;color:var(--txt3);flex:0 0 auto}
.sm-a .tx{flex:1;min-width:0}
.sm-a .r{display:block;font-size:11.5px;line-height:1.5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sm-a .h{display:block;font-size:10px;color:var(--txt3);font-family:var(--fm)}
.sm-a .sv{font-size:9.5px;color:var(--txt3);flex:0 0 auto}
.sm-main{flex:1;overflow-y:auto;padding:20px;min-width:0}
.sm-dh{display:flex;align-items:center;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--divider);margin-bottom:14px}
.sm-dh .sv{padding:4px 11px;border-radius:99px;font-size:10.5px;font-weight:600}
.sm-dh .sv.crit{background:rgba(255,92,114,.2);color:#ff8fa3}
.sm-dh .sv.high{background:rgba(255,182,72,.2);color:#ffb648}
.sm-dh .sv.med{background:rgba(255,209,102,.18);color:#ffd166}
.sm-dh .sv.low{background:rgba(108,203,95,.18);color:var(--ok)}
.sm-dh .r{font-size:14px;font-weight:600}
.sm-dh .i{font-size:11px;color:var(--txt3);font-family:var(--fm)}
.sm-dh .btn{margin-inline-start:auto;flex:0 0 auto}
.sm-msg{font-size:13px;line-height:1.9;margin-bottom:14px;color:var(--txt2)}

@media (max-width:860px){
  .pc,.sm{flex-direction:column}
  .pc-side,.sm-side{width:auto;max-height:170px;border-inline-end:0;border-block-end:1px solid var(--divider)}
  .pc-row .c2,.pc-row .c3{width:92px}
  .pc-row .c1{width:56px}
  .pc-list{flex:1;min-height:150px}
  .pc-det{flex:1}
  .sm-main{padding:14px}
}

/* ═══════ ورود با حساب (صفحه قفل) ═══════ */
.lk-inp{
  width:300px;max-width:82vw;height:38px;margin-top:9px;padding:0 13px;border-radius:var(--r-ctrl);
  background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);
  border-bottom:2px solid rgba(255,255,255,.55);color:#fff;outline:none;font-size:14px
}
.lk-inp::placeholder{color:rgba(255,255,255,.65)}
.lk-inp:focus{border-bottom-color:#4cc2ff}
.lk-btn{
  width:300px;max-width:82vw;height:40px;margin-top:14px;border-radius:var(--r-ctrl);
  background:#0078d4;color:#fff;font-weight:600;font-size:14px;transition:.15s
}
.lk-btn:hover{background:#0a84e0}
.lk-msg{min-height:18px;margin-top:9px;font-size:12px;color:#ff99a4;max-width:300px}
.lk-msg.ok{color:#6ccb5f}
.lk-switch{margin-top:14px;font-size:12.5px;color:rgba(255,255,255,.8)}
.lk-switch a{color:#9fe0ff;cursor:pointer}
.lk-switch a:hover{text-decoration:underline}

/* ═══════ پنل معلم ═══════ */
.tc{height:100%;display:flex;background:var(--solid);overflow:hidden}
.tc-side{width:300px;flex:0 0 auto;background:var(--layer2);border-inline-end:1px solid var(--divider);
  display:flex;flex-direction:column;overflow:hidden}
.tc-head{display:flex;align-items:center;justify-content:space-between;padding:11px 13px;
  font-size:12px;font-weight:600;border-bottom:1px solid var(--divider)}
.tc-head .ins-x{font-size:11px;color:var(--accent-l)}
.tc-list{flex:1;overflow-y:auto;padding:6px}
.tc-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border-radius:8px;
  text-align:start;margin-bottom:3px}
.tc-item:hover{background:var(--hover)}
.tc-item.sel{background:var(--card);border:1px solid var(--stroke-s)}
.tc-item .av{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-size:15px;
  background:linear-gradient(135deg,#0078d4,#4cc2ff);color:#fff;flex:0 0 auto;text-transform:uppercase}
.tc-item .tx{flex:1;min-width:0}
.tc-item .nm{display:block;font-size:12.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tc-item .mt{display:block;font-size:10.5px;color:var(--txt3)}
.tc-main{flex:1;overflow-y:auto;padding:22px;min-width:0}
.tc-dh{display:flex;align-items:center;gap:14px;padding-bottom:14px;border-bottom:1px solid var(--divider);margin-bottom:16px}
.tc-dh .av{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;font-size:24px;
  background:linear-gradient(135deg,#0078d4,#4cc2ff);color:#fff;text-transform:uppercase}
.tc-dh .nm{font-size:17px;font-weight:700}
.tc-dh .un{font-size:12px;color:var(--txt3);font-family:var(--fm)}
.tc-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px}
.tc-card{background:var(--card);border:1px solid var(--stroke);border-radius:10px;padding:14px;text-align:center}
.tc-card .ic{font-size:20px}
.tc-card .v{font-size:20px;font-weight:700;margin-top:4px}
.tc-card .l{font-size:11px;color:var(--txt3);margin-top:2px}
.tc-tracks{display:grid;gap:10px}
.tc-tr .hd{display:flex;justify-content:space-between;font-size:12px;margin-bottom:5px}
.tc-tr .bar{height:6px;border-radius:9px;background:var(--stroke);overflow:hidden}
.tc-tr .bar i{display:block;height:100%;background:var(--accent-l);border-radius:9px}
@media (max-width:860px){ .tc{flex-direction:column} .tc-side{width:auto;max-height:200px;
  border-inline-end:0;border-block-end:1px solid var(--divider)} .tc-main{padding:14px} }

/* ═══════ پروفایل و مأموریت‌های جانبی ═══════ */
.pf{padding:20px 24px;overflow-y:auto;height:100%}
.pf-hero{display:flex;align-items:center;gap:14px;padding-bottom:16px;border-bottom:1px solid var(--divider);margin-bottom:16px}
.pf-av{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;font-size:24px;
  background:linear-gradient(135deg,#0078d4,#4cc2ff);color:#fff;text-transform:uppercase}
.pf-hero .nm{font-size:17px;font-weight:700}
.pf-hero .un{font-size:12px;color:var(--txt3);font-family:var(--fm)}
.pf-h{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:600;margin-bottom:12px}
.pf-cnt{font-size:11.5px;color:var(--txt3);font-weight:400}
.pf-q{background:var(--card);border:1px solid var(--stroke);border-radius:12px;padding:15px;margin-bottom:11px}
.pf-q.done{border-color:rgba(108,203,95,.4);background:rgba(108,203,95,.06)}
.pf-qh{display:flex;align-items:flex-start;gap:12px}
.pf-qh .ic{font-size:24px;flex:0 0 auto}
.pf-qh .tx{flex:1;min-width:0}
.pf-qh .t{font-size:14px;font-weight:600}
.pf-qh .t .ok{color:var(--ok);font-size:11px;font-weight:500}
.pf-qh .d{font-size:12px;color:var(--txt2);line-height:1.7;margin-top:3px}
.pf-qh .xp{font-size:11.5px;color:var(--warn);font-weight:700;flex:0 0 auto}
.pf-qb{margin-top:12px}
.pf-row{display:flex;gap:8px;align-items:center}
.pf-row input{flex:1;height:36px;padding:0 12px;border-radius:var(--r-ctrl);background:var(--layer2);
  border:1px solid var(--stroke-s);color:var(--txt);outline:none;font-size:13px;min-width:0}
.pf-row input:focus{border-color:var(--accent)}
.pf-row .btn{flex:0 0 auto}
.pf-msg{font-size:11.5px;color:var(--err);margin-top:7px;min-height:14px}
.pf-on{color:var(--ok);font-size:13px;font-weight:600;flex:1}
.pf-2fa{margin-top:12px;padding:14px;border-radius:10px;background:var(--layer2);border:1px solid var(--stroke)}
.pf-2fa .d{font-size:12px;color:var(--txt2);line-height:1.7}
.pf-2fa .key{font-family:var(--fm);font-size:15px;letter-spacing:1px;background:#0d1117;color:#7ee787;
  padding:11px;border-radius:8px;text-align:center;margin:10px 0;direction:ltr}
.pf-2fa .demo{font-size:11.5px;color:var(--txt3);margin-bottom:10px}
.pf-2fa .demo b{color:var(--accent-l);font-family:var(--fm);font-size:14px}

/* ═══════ لیدربورد ═══════ */
.lb{height:100%;display:flex;flex-direction:column;overflow:hidden}
.lb-top{padding:16px}
.lb-podium{display:flex;align-items:flex-end;justify-content:center;gap:12px}
.lb-pod{flex:0 0 30%;max-width:150px;background:var(--card);border:1px solid var(--stroke);border-radius:12px;
  padding:14px 8px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:5px}
.lb-pod.empty{visibility:hidden}
.lb-pod.p1{transform:translateY(-10px);border-color:#ffd166;box-shadow:0 8px 24px rgba(255,209,102,.2)}
.lb-pod.self{outline:2px solid var(--accent-l)}
.lb-pod .m{font-size:26px}
.lb-pod .av{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-size:20px;
  background:linear-gradient(135deg,#0078d4,#4cc2ff);color:#fff;text-transform:uppercase}
.lb-pod .nm{font-size:12px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.lb-pod .xp{font-size:12.5px;color:var(--warn);font-weight:700}
.lb-head{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;
  border-top:1px solid var(--divider);border-bottom:1px solid var(--divider);background:var(--layer2)}
.lb-hd{font-size:12.5px;font-weight:600}
.lb-head .ins-x{font-size:11px;color:var(--accent-l)}
.lb-list{flex:1;overflow-y:auto;padding:6px 10px}
.lb-row{display:flex;align-items:center;padding:9px 8px;border-bottom:1px solid var(--divider);font-size:12.5px}
.lb-row.head{color:var(--txt3);font-size:11px;position:sticky;top:0;background:var(--solid)}
.lb-row.self{background:rgba(0,120,212,.12);border-radius:8px}
.lb-row .c0{width:44px;font-weight:700}
.lb-row .c1{flex:1;display:flex;align-items:center;gap:9px;overflow:hidden}
.lb-row .c2{width:60px;text-align:center;color:var(--txt2)}
.lb-row .c3{width:80px;text-align:end;color:var(--warn);font-weight:600}
.lb-row .av.sm{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:12px;
  background:linear-gradient(135deg,#0078d4,#4cc2ff);color:#fff;text-transform:uppercase;flex:0 0 auto}
.youtag{font-size:9.5px;background:var(--accent);color:#fff;padding:1px 7px;border-radius:99px}
.lb-me{padding:10px 16px;border-top:1px solid var(--divider);background:var(--layer2);font-size:12.5px;color:var(--txt2);text-align:center}
@media (max-width:860px){ .pf{padding:14px} .lb-pod .nm{font-size:11px} }

/* ═══════ چالش روزانه — تله‌شناسی ═══════ */
.dc{padding:20px 24px;height:100%;overflow-y:auto}
.dc-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.dc-head .hl{font-size:17px;font-weight:700}
.dc-streak{font-size:12px;color:var(--warn);font-weight:600}
.dc-card{background:var(--card);border:1px solid var(--stroke);border-radius:14px;overflow:hidden;margin-bottom:16px}
.dc-from{display:flex;align-items:center;gap:11px;padding:13px 15px;background:var(--layer2);border-bottom:1px solid var(--divider)}
.dc-from .av{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-size:20px;
  background:linear-gradient(135deg,#5a6478,#8494ab);flex:0 0 auto}
.dc-from .fn{font-size:13px;font-weight:600}
.dc-msg{padding:16px;font-size:14px;line-height:1.95}
.dc-q{font-size:13px;font-weight:600;text-align:center;margin-bottom:12px;color:var(--txt2)}
.dc-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.dc-btn{padding:14px 10px;border-radius:12px;font-size:13px;font-weight:600;border:1px solid var(--stroke-s);
  background:var(--card);transition:var(--t-fast)}
.dc-btn:hover:not(:disabled){transform:translateY(-2px);border-color:var(--stroke-s)}
.dc-btn.safe:hover:not(:disabled){border-color:var(--accent)}
.dc-btn.trap:hover:not(:disabled){border-color:var(--warn)}
.dc-btn.right{background:rgba(108,203,95,.18);border-color:var(--ok);color:var(--txt)}
.dc-btn.wrong{background:rgba(255,92,114,.15);border-color:var(--danger)}
.dc-btn:disabled{cursor:default;opacity:.85}
.dc-result{margin-top:16px}
.dc-result .rt{font-size:14px;font-weight:700;margin-bottom:8px}
.dc-result.ok .rt{color:var(--ok)} .dc-result.bad .rt{color:#ffb648}
.dc-result .rw{font-size:12.5px;line-height:1.9;color:var(--txt2);
  background:var(--layer2);border:1px solid var(--stroke);border-radius:10px;padding:12px 14px}
.dc-result .rw b{color:var(--txt)}
.dc-result .rx{margin-top:10px;display:inline-block;padding:6px 16px;border-radius:99px;
  background:var(--accent);color:#fff;font-weight:700;font-size:13px}
.dc-rule{margin-top:16px;font-size:11.5px;color:var(--txt3);text-align:center;line-height:1.8}
.dc-done{text-align:center;padding:40px 20px}
.dc-done .ic{font-size:48px}
.dc-done .t{font-size:14px;margin:12px 0 18px;color:var(--txt2)}
