/* ══════════════════════════════════════════════════════
   نَشر — نظام التصميم
   لوح طيني في غرفة تحكّم · TMUZ Group
   ══════════════════════════════════════════════════════ */

:root{
  --void:#06080D;  --canvas:#0A0D14;  --surface:#111725;  --surface-2:#161E2F;
  --line:#1F2A3F;  --line-soft:#18202F;
  --azure:#056CD3; --azure-lit:#2E8FF0; --azure-deep:#03449A;
  --clay:#D6A45C;  --clay-deep:#A9762F;
  --ok:#22B07A;    --warn:#E8A13A;  --danger:#E2544A;  --violet:#7C6BE8;
  --ink:#EAF0F9;   --muted:#8493AB; --faint:#5A6880;
  --arch: 26px 26px 8px 8px;
  --r:14px; --r-sm:9px;
  --display:"Alexandria",system-ui,sans-serif;
  --body:"IBM Plex Sans Arabic","Alexandria",system-ui,sans-serif;
  --shadow: 0 24px 60px -20px rgba(0,0,0,.75);
  --glow: 0 0 0 1px rgba(46,143,240,.35), 0 8px 32px -8px rgba(5,108,211,.5);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}

/* خاصية hidden لازم تتغلب على أي display بالأسفل */
[hidden]{display:none !important}
body{
  font-family:var(--body); background:var(--void); color:var(--ink);
  font-size:14.5px; line-height:1.6; -webkit-font-smoothing:antialiased;
  overflow:hidden;
}
body::before{
  content:''; position:fixed; inset:0; pointer-events:none; z-index:0;
  background:
    radial-gradient(900px 500px at 88% -8%, rgba(5,108,211,.16), transparent 62%),
    radial-gradient(700px 420px at 8% 105%, rgba(214,164,92,.07), transparent 60%);
}
.grain{
  position:fixed; inset:0; z-index:1; pointer-events:none; opacity:.32; mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E");
}
::selection{background:var(--azure);color:#fff}
::-webkit-scrollbar{width:9px;height:9px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:var(--line);border-radius:9px}
::-webkit-scrollbar-thumb:hover{background:#2A3A55}

h1,h2,h3,h4{font-family:var(--display);font-weight:600;line-height:1.25;letter-spacing:-.01em}
button,input,textarea,select{font-family:inherit;font-size:inherit;color:inherit}
a{color:inherit;text-decoration:none}

/* ═══════ شاشة الدخول ═══════ */
.gate{
  position:fixed; inset:0; z-index:20; display:grid; grid-template-columns:1fr 460px;
  background:var(--void);
}
.gate-art{
  position:relative; display:grid; place-items:center; overflow:hidden;
  background:
    linear-gradient(150deg, rgba(5,108,211,.14), transparent 55%),
    repeating-linear-gradient(90deg, transparent 0 58px, rgba(255,255,255,.018) 58px 59px);
  border-inline-start:1px solid var(--line-soft);
}
.gate-art::after{
  content:''; position:absolute; width:120%; aspect-ratio:1; border-radius:50%;
  background:radial-gradient(circle, rgba(5,108,211,.2), transparent 62%); filter:blur(60px);
}
.arch-mark{width:min(38vh,300px);position:relative;z-index:1;
  filter:drop-shadow(0 30px 70px rgba(5,108,211,.45));
  animation:rise 1.1s cubic-bezier(.2,.9,.25,1) both}
@keyframes rise{from{opacity:0;transform:translateY(28px) scale(.94)}to{opacity:1;transform:none}}
.gate-form{display:flex;flex-direction:column;justify-content:center;padding:0 56px;
  background:linear-gradient(180deg,var(--canvas),#070A10)}
.gate-head{margin-bottom:34px}
.kicker{font-size:10px;letter-spacing:.3em;color:var(--faint);font-weight:600;display:block;margin-bottom:14px}
.gate-head h1{font-size:52px;font-weight:800;letter-spacing:-.03em;
  background:linear-gradient(180deg,#fff,#8FBEF0);-webkit-background-clip:text;background-clip:text;color:transparent}
.gate-head p{color:var(--muted);margin-top:6px}
.stack{display:flex;flex-direction:column;gap:14px}
.field{display:flex;flex-direction:column;gap:7px}
.field>span{font-size:11.5px;color:var(--muted);font-weight:500;letter-spacing:.02em}
input,textarea,select{
  background:var(--surface); border:1px solid var(--line); border-radius:var(--r-sm);
  padding:11px 13px; outline:none; transition:.18s; width:100%;
}
input:focus,textarea:focus,select:focus{border-color:var(--azure);box-shadow:0 0 0 3px rgba(5,108,211,.18)}
textarea{resize:vertical;min-height:96px;line-height:1.75}
.err{color:var(--danger);font-size:12.5px}

/* ═══════ الأزرار ═══════ */
.btn{
  display:inline-flex;align-items:center;gap:7px;justify-content:center;
  border:1px solid var(--line); background:var(--surface); border-radius:var(--r-sm);
  padding:9px 15px; font-weight:600; font-size:13px; cursor:pointer; transition:.16s;
  white-space:nowrap;
}
.btn:hover{background:var(--surface-2);border-color:#2A3A55;transform:translateY(-1px)}
.btn:active{transform:none}
.btn.primary{background:linear-gradient(180deg,var(--azure-lit),var(--azure));border-color:var(--azure-lit);color:#fff;
  box-shadow:0 6px 20px -8px rgba(5,108,211,.9)}
.btn.primary:hover{box-shadow:0 10px 28px -8px rgba(5,108,211,1)}
.btn.ghost{background:transparent}
.btn.danger{color:var(--danger);border-color:rgba(226,84,74,.35)}
.btn.ok{color:var(--ok);border-color:rgba(34,176,122,.35)}
.btn.lg{padding:12px 18px;font-size:14px}
.btn.sm{padding:6px 10px;font-size:12px}
.btn[disabled]{opacity:.45;pointer-events:none}
.icon-btn{background:transparent;border:0;color:var(--muted);cursor:pointer;padding:6px;border-radius:7px;transition:.15s}
.icon-btn:hover{background:var(--surface-2);color:var(--ink)}

/* ═══════ الهيكل ═══════ */
.app{position:relative;z-index:2;display:grid;grid-template-columns:1fr 76px;height:100vh}
.rail{
  grid-column:2; display:flex;flex-direction:column;align-items:center;gap:6px;
  padding:14px 0; background:linear-gradient(180deg,#0C1119,#080B12);
  border-inline-start:1px solid var(--line-soft);
}
.rail-logo{width:42px;margin-bottom:14px;display:block;transition:.25s}
.rail-logo:hover{transform:translateY(-2px) rotate(-2deg)}
.rail-logo svg{width:100%;filter:drop-shadow(0 6px 16px rgba(5,108,211,.5))}
.rail-nav{display:flex;flex-direction:column;gap:4px;flex:1}
.rail-btn{
  width:48px;height:44px;display:grid;place-items:center;background:transparent;border:0;
  border-radius:var(--arch); color:var(--faint); cursor:pointer; position:relative; transition:.18s;
}
.rail-btn:hover{color:var(--ink);background:rgba(255,255,255,.04)}
.rail-btn.on{color:#fff;background:linear-gradient(180deg,rgba(5,108,211,.35),rgba(5,108,211,.12));
  box-shadow:inset 0 0 0 1px rgba(46,143,240,.35)}
.rail-btn.on::after{content:'';position:absolute;inset-inline-end:-14px;width:3px;height:18px;border-radius:3px;background:var(--azure-lit)}
.rail-btn .tip{
  position:absolute;inset-inline-end:56px;background:var(--surface-2);border:1px solid var(--line);
  padding:5px 10px;border-radius:7px;font-size:12px;white-space:nowrap;opacity:0;pointer-events:none;
  transform:translateX(-6px);transition:.16s;z-index:9
}
.rail-btn:hover .tip{opacity:1;transform:none}
.rail-btn .badge{position:absolute;top:4px;inset-inline-start:6px;min-width:16px;height:16px;padding:0 4px;
  background:var(--clay);color:#1A1206;border-radius:9px;font-size:10px;font-weight:700;display:grid;place-items:center}
#userInitial{width:32px;height:32px;border-radius:var(--arch);background:var(--azure);color:#fff;
  display:grid;place-items:center;font-weight:700;font-size:13px}

.main{grid-column:1;display:flex;flex-direction:column;min-width:0;overflow:hidden}
.topbar{
  display:flex;align-items:center;gap:16px;padding:0 24px;height:64px;flex-shrink:0;
  border-bottom:1px solid var(--line-soft);background:rgba(10,13,20,.7);backdrop-filter:blur(14px);
}
.topbar h2{font-size:16px;font-weight:600;flex:1;color:var(--ink)}
.topbar-actions{display:flex;gap:8px;align-items:center}
.brandpick{position:relative}
.brand-btn{display:flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--line);
  border-radius:999px;padding:6px 12px 6px 10px;cursor:pointer;font-size:13px;font-weight:500;transition:.16s}
.brand-btn:hover{border-color:#2A3A55}
.brand-btn .dot{width:8px;height:8px;border-radius:50%;background:var(--azure);flex-shrink:0}
.menu{position:absolute;top:calc(100% + 8px);inset-inline-start:0;min-width:230px;background:var(--surface);
  border:1px solid var(--line);border-radius:var(--r);padding:6px;box-shadow:var(--shadow);z-index:15;max-height:60vh;overflow:auto}
.menu button{display:flex;align-items:center;gap:9px;width:100%;background:transparent;border:0;padding:8px 10px;
  border-radius:var(--r-sm);cursor:pointer;text-align:start;font-size:13px;transition:.14s}
.menu button:hover{background:var(--surface-2)}
.menu hr{border:0;border-top:1px solid var(--line);margin:5px 0}

.view{flex:1;overflow-y:auto;padding:24px;scroll-behavior:smooth}
.view>*{animation:fade .34s cubic-bezier(.2,.9,.25,1) both}
@keyframes fade{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

/* ═══════ البطاقات ═══════ */
.card{background:linear-gradient(180deg,var(--surface),#0E1320);border:1px solid var(--line-soft);
  border-radius:var(--r);padding:18px}
.card.arch{border-radius:var(--arch)}
.grid{display:grid;gap:14px}
.g4{grid-template-columns:repeat(4,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}
.g2{grid-template-columns:repeat(2,1fr)}
@media(max-width:1100px){.g4{grid-template-columns:repeat(2,1fr)}.g3,.g2{grid-template-columns:1fr}}

.stat{position:relative;overflow:hidden}
.stat .n{font-family:var(--display);font-size:34px;font-weight:700;letter-spacing:-.03em;line-height:1}
.stat .l{font-size:12px;color:var(--muted);margin-top:6px}
.stat .spark{position:absolute;inset-block-start:0;inset-inline-end:0;width:64px;height:64px;opacity:.13}
.stat.hi .n{color:var(--azure-lit)}
.stat.warn .n{color:var(--clay)}
.stat.bad .n{color:var(--danger)}

.sec-head{display:flex;align-items:center;justify-content:space-between;margin:26px 0 12px}
.sec-head h3{font-size:14px;font-weight:600;color:var(--ink);display:flex;align-items:center;gap:9px}
.sec-head h3::before{content:'';width:3px;height:15px;border-radius:2px;background:var(--azure)}
.sec-head .tools{display:flex;gap:7px}

/* ═══════ عناصر المنشور ═══════ */
.post-row{display:flex;gap:13px;padding:13px;border:1px solid var(--line-soft);border-radius:var(--r);
  background:var(--surface);transition:.18s;cursor:pointer;align-items:flex-start}
.post-row:hover{border-color:#2A3A55;transform:translateX(-3px);background:var(--surface-2)}
.post-thumb{width:56px;height:56px;border-radius:10px;object-fit:cover;flex-shrink:0;background:var(--surface-2);
  border:1px solid var(--line)}
.post-thumb.ph{display:grid;place-items:center;color:var(--faint);font-size:18px}
.post-main{flex:1;min-width:0}
.post-text{font-size:13.5px;line-height:1.65;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;
  overflow:hidden;color:#D5DEEC}
.post-meta{display:flex;align-items:center;gap:9px;margin-top:8px;flex-wrap:wrap;font-size:11.5px;color:var(--muted)}
.chips{display:flex;gap:4px}
.chip{width:19px;height:19px;border-radius:5px;display:grid;place-items:center;font-size:9px;font-weight:700}
.chip.facebook{background:#1877F2;color:#fff}
.chip.instagram{background:linear-gradient(45deg,#F9CE34,#EE2A7B,#6228D7);color:#fff}
.chip.tiktok{background:#000;color:#fff;box-shadow:inset 0 0 0 1px #333}
.chip.x{background:#111;color:#fff}
.chip.linkedin{background:#0A66C2;color:#fff}

.tag{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:999px;font-size:10.5px;
  font-weight:600;border:1px solid transparent;white-space:nowrap}
.tag.scheduled{background:rgba(5,108,211,.16);color:var(--azure-lit);border-color:rgba(46,143,240,.3)}
.tag.published{background:rgba(34,176,122,.14);color:var(--ok);border-color:rgba(34,176,122,.28)}
.tag.pending  {background:rgba(232,161,58,.14);color:var(--warn);border-color:rgba(232,161,58,.3)}
.tag.draft    {background:rgba(132,147,171,.13);color:var(--muted);border-color:rgba(132,147,171,.22)}
.tag.failed,.tag.rejected{background:rgba(226,84,74,.14);color:var(--danger);border-color:rgba(226,84,74,.3)}
.tag.publishing{background:rgba(124,107,232,.16);color:var(--violet);border-color:rgba(124,107,232,.3)}

/* ═══════ التقويم ═══════ */
.cal{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--line-soft);
  border:1px solid var(--line-soft);border-radius:var(--r);overflow:hidden}
.cal-h{background:#0D1220;padding:9px;text-align:center;font-size:11px;color:var(--muted);font-weight:600}
.cal-d{background:var(--canvas);min-height:120px;padding:7px;position:relative;transition:.15s}
.cal-d:hover{background:#0D1220}
.cal-d.other{opacity:.34}
.cal-d.today{background:linear-gradient(180deg,rgba(5,108,211,.1),transparent)}
.cal-d.today .cal-n{background:var(--azure);color:#fff;border-radius:6px}
.cal-d.drop{background:rgba(5,108,211,.16);box-shadow:inset 0 0 0 1px var(--azure-lit)}
.cal-n{font-size:11.5px;color:var(--muted);font-weight:600;width:22px;height:20px;display:grid;place-items:center;margin-bottom:5px}
.cal-item{background:var(--surface-2);border:1px solid var(--line);border-inline-start:2.5px solid var(--azure);
  border-radius:6px;padding:5px 7px;margin-bottom:4px;font-size:11px;cursor:grab;transition:.14s;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cal-item:hover{background:#1B2540;transform:translateX(-2px)}
.cal-item.published{border-inline-start-color:var(--ok)}
.cal-item.pending{border-inline-start-color:var(--warn)}
.cal-item.failed{border-inline-start-color:var(--danger)}
.cal-item .t{color:var(--faint);font-size:10px;margin-inline-end:4px}

/* ═══════ الطابور ═══════ */
.qday{margin-bottom:22px}
.qday-h{display:flex;align-items:center;gap:11px;margin-bottom:9px}
.qday-h b{font-family:var(--display);font-size:15px}
.qday-h span{font-size:11.5px;color:var(--faint)}
.qday-h::after{content:'';flex:1;height:1px;background:var(--line-soft)}
.qslot{display:flex;align-items:center;gap:13px;padding:10px 13px;border:1px dashed var(--line);
  border-radius:var(--r-sm);margin-bottom:7px;transition:.16s}
.qslot.filled{border-style:solid;background:var(--surface);cursor:pointer}
.qslot.filled:hover{border-color:#2A3A55;transform:translateX(-3px)}
.qtime{font-family:var(--display);font-size:13px;font-weight:600;color:var(--azure-lit);width:52px;flex-shrink:0;
  font-variant-numeric:tabular-nums}
.qempty{color:var(--faint);font-size:12.5px;flex:1}

/* ═══════ المحرّر ═══════ */
.sheet{position:fixed;inset:0;z-index:30;display:flex;justify-content:flex-start}
.sheet-bg{position:absolute;inset:0;background:rgba(3,5,9,.72);backdrop-filter:blur(6px);animation:fade .2s}
.sheet-panel{position:relative;width:min(1080px,96vw);height:100%;margin-inline-start:auto;
  background:linear-gradient(180deg,#0C1119,var(--canvas));border-inline-end:1px solid var(--line);
  display:flex;flex-direction:column;box-shadow:var(--shadow);animation:slide .34s cubic-bezier(.2,.9,.25,1)}
@keyframes slide{from{transform:translateX(-40px);opacity:0}to{transform:none;opacity:1}}
.sheet-head{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;
  border-bottom:1px solid var(--line-soft);flex-shrink:0}
.sheet-head h3{font-size:16px}
.sheet-body{flex:1;overflow-y:auto;padding:22px}
.comp{display:grid;grid-template-columns:1fr 340px;gap:24px;align-items:start}
@media(max-width:900px){.comp{grid-template-columns:1fr}}

.ch-pick{display:flex;flex-wrap:wrap;gap:8px}
.ch-opt{display:flex;align-items:center;gap:8px;padding:7px 11px 7px 8px;border:1px solid var(--line);
  border-radius:999px;cursor:pointer;transition:.16s;background:var(--surface);font-size:12.5px}
.ch-opt:hover{border-color:#2A3A55}
.ch-opt.on{border-color:var(--azure-lit);background:rgba(5,108,211,.16);box-shadow:0 0 0 2px rgba(5,108,211,.14)}
.ch-opt img,.ch-opt .av{width:24px;height:24px;border-radius:50%;object-fit:cover;background:var(--surface-2)}
.ch-opt.dead{opacity:.4;pointer-events:none}

.dropzone{border:1.5px dashed var(--line);border-radius:var(--r);padding:22px;text-align:center;
  color:var(--muted);cursor:pointer;transition:.18s;font-size:12.5px}
.dropzone:hover,.dropzone.over{border-color:var(--azure-lit);background:rgba(5,108,211,.07);color:var(--azure-lit)}
.mgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px;margin-top:11px}
.mitem{position:relative;aspect-ratio:1;border-radius:9px;overflow:hidden;border:1px solid var(--line);cursor:grab}
.mitem img,.mitem video{width:100%;height:100%;object-fit:cover;display:block}
.mitem .x{position:absolute;top:4px;inset-inline-end:4px;width:20px;height:20px;border-radius:50%;
  background:rgba(3,5,9,.82);border:0;color:#fff;cursor:pointer;font-size:11px;display:grid;place-items:center}
.mitem .num{position:absolute;bottom:4px;inset-inline-start:4px;width:18px;height:18px;border-radius:5px;
  background:var(--azure);color:#fff;font-size:10px;font-weight:700;display:grid;place-items:center}

.seg{display:inline-flex;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);padding:3px;gap:2px}
.seg button{background:transparent;border:0;padding:6px 13px;border-radius:6px;cursor:pointer;font-size:12.5px;
  font-weight:500;color:var(--muted);transition:.15s}
.seg button.on{background:var(--azure);color:#fff;font-weight:600}

/* معاينة */
.preview{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:#0D1220}
.pv-h{display:flex;align-items:center;gap:9px;padding:11px}
.pv-h .av{width:34px;height:34px;border-radius:50%;background:var(--surface-2);object-fit:cover}
.pv-h b{font-size:12.5px;display:block}
.pv-h span{font-size:10.5px;color:var(--faint)}
.pv-body{padding:0 11px 11px;font-size:12.5px;line-height:1.75;white-space:pre-wrap;word-break:break-word;color:#D5DEEC}
.pv-media{background:#000;display:grid;grid-template-columns:1fr;max-height:340px;overflow:hidden}
.pv-media.multi{grid-template-columns:1fr 1fr}
.pv-media img,.pv-media video{width:100%;height:100%;object-fit:cover;max-height:340px}
.pv-foot{display:flex;gap:16px;padding:9px 11px;border-top:1px solid var(--line-soft);color:var(--faint);font-size:11px}

.counter{font-size:11px;color:var(--faint);font-variant-numeric:tabular-nums}
.counter.over{color:var(--danger);font-weight:700}

/* ═══════ متفرقات ═══════ */
.empty{text-align:center;padding:56px 20px;color:var(--faint)}
.empty svg{width:70px;opacity:.2;margin-bottom:14px}
.empty h4{font-size:15px;color:var(--muted);margin-bottom:5px}
.empty p{font-size:12.5px}

.spin{width:34px;height:34px;animation:sp 1.3s cubic-bezier(.5,0,.5,1) infinite;margin:40px auto;display:block}
@keyframes sp{to{transform:rotate(360deg)}}

.toast{position:fixed;bottom:22px;inset-inline-start:22px;z-index:60;background:var(--surface-2);
  border:1px solid var(--line);border-inline-start:3px solid var(--azure);border-radius:var(--r-sm);
  padding:11px 17px;box-shadow:var(--shadow);font-size:13px;animation:pop .3s cubic-bezier(.2,.9,.25,1);max-width:400px}
.toast.bad{border-inline-start-color:var(--danger)}
.toast.ok{border-inline-start-color:var(--ok)}
@keyframes pop{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

table{width:100%;border-collapse:collapse;font-size:13px}
th{text-align:start;padding:9px 11px;color:var(--muted);font-size:11.5px;font-weight:600;
  border-bottom:1px solid var(--line);white-space:nowrap}
td{padding:11px;border-bottom:1px solid var(--line-soft);vertical-align:middle}
tr:hover td{background:rgba(255,255,255,.017)}
.num{font-variant-numeric:tabular-nums;font-family:var(--display);font-weight:600}

.bar{height:5px;background:var(--line-soft);border-radius:3px;overflow:hidden;min-width:60px}
.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--azure),var(--azure-lit));border-radius:3px}

.row{display:flex;align-items:center;gap:11px}
.between{justify-content:space-between}
.wrap{flex-wrap:wrap}
.mt{margin-top:14px} .mb{margin-bottom:14px}
.muted{color:var(--muted)} .faint{color:var(--faint)} .sm{font-size:12px}
.grow{flex:1}

/* ═══════ معالج البداية ═══════ */
.step{border:1px solid var(--line-soft);border-radius:var(--r);margin-bottom:14px;overflow:hidden;
  background:linear-gradient(180deg,var(--surface),#0E1320);opacity:.55;transition:.25s}
.step.now{opacity:1;border-color:rgba(46,143,240,.4);box-shadow:0 0 0 1px rgba(46,143,240,.14),0 14px 40px -20px rgba(5,108,211,.7)}
.step.done{opacity:1}
.step-h{display:flex;align-items:center;gap:11px;padding:15px 18px;font-family:var(--display);font-size:14.5px}
.step-b{padding:0 18px 18px}
.step:not(.now):not(.done) .step-b{display:none}
.step-ic{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;
  background:var(--surface-2);color:var(--faint);font-size:12px;border:1px solid var(--line)}
.step-ic.ok{background:var(--ok);color:#04150E;border-color:var(--ok);font-weight:700}
.step-h .tag{margin-inline-start:auto}
