/* ==========================================================================
   Project Discovery AI — assets/app.css   v4 · "نحاسي / سلَيت"
   إعادة بناء كاملة حسب كانفس Claude Design «Discovery Platform — Restructure v4».

   بنية جديدة: ريل أيقونات دائم + عمود سياق + محتوى.
   قائمة مشاريع جدولية · جلسة اكتشاف بثلاث لوحات · تقرير بمنطق مستند.
   داكن فقط (الكانفس لا يعرّف وضعًا نهاريًا).

   01 Tokens · 02 Base · 03 App shell · 04 Marketing chrome · 05 Buttons
   06 Motion · 07 Landing · 08 Auth · 09 Forms · 10 Projects list
   11 Workspace · 12 Report · 13 Admin · 14 Status/Progress · 15 Mermaid
   16 Loading · 17 A11y · 18 Responsive · 19 Print
   ========================================================================== */

/* ── 01 Tokens ──────────────────────────────────────────────────────────── */
:root{
  --bg:#0A0C0D;              /* سلَيت شديد العمق */
  --rail:#080A0B;            /* الريل */
  --panel:#0B0D0E;           /* أعمدة السياق */
  --surface:#111416;         /* اللوح */
  --surface2:#171B1E;        /* لوح مرتفع */
  --surface3:#1C2225;        /* عنصر نشط / فقاعة المستخدم */

  --line:#171B1E;            /* فاصل خافت */
  --line2:#232A2E;           /* حدّ الكروت */
  --line3:#2C3439;           /* حدّ أقوى */

  --text:#ECEFF1;
  --muted:#8A959B;

  --accent:#E08A4F;          /* نحاسي — الفعل والقرار فقط */
  --accent2:#C46A32;         /* نحاسي غامق */
  --brand:#E08A4F;
  --on-accent:#14181A;
  --teal:#3FA39B;            /* بيانات ثانوية */
  --good:#4FB783;
  --warn:#E0A94F;
  --bad:#E0685F;

  --accent-soft:rgba(224,138,79,.12);
  --accent-line:rgba(224,138,79,.28);
  --good-soft:rgba(79,183,131,.12);
  --warn-soft:rgba(224,169,79,.12);
  --warn-line:rgba(224,169,79,.30);
  --bad-soft:rgba(224,104,95,.12);

  --font:"Tajawal","IBM Plex Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif;
  --mono:"Space Grotesk","SFMono-Regular",ui-monospace,Menlo,Consolas,monospace;

  --r-sm:9px; --r:12px; --r-md:14px; --r-lg:16px; --r-xl:20px; --r-pill:999px;

  --rail-w:64px; --ctx-w:236px; --brief-w:320px; --toc-w:224px; --top-h:64px;

  --ease-out:cubic-bezier(.16,.84,.3,1);
  --ease-soft:cubic-bezier(.4,0,.2,1);
  --d-1:120ms; --d-2:180ms; --d-3:240ms; --d-4:420ms; --d-5:680ms;
  --fx:1;

  color-scheme:dark;
}

/* ── 02 Base ────────────────────────────────────────────────────────────── */
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);direction:rtl;
  font-family:var(--font);font-size:15px;line-height:1.8;
  -webkit-font-smoothing:antialiased;min-height:100vh;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit;color:inherit}
button{cursor:pointer}
h1,h2,h3{margin-block-start:0;font-weight:800;text-wrap:pretty}
h1{font-size:30px;letter-spacing:-1.3px;line-height:1.15}
h2{font-size:24px;letter-spacing:-1px;line-height:1.2}
h3{font-size:15px;font-weight:700;letter-spacing:-.3px;line-height:1.4}
p{text-wrap:pretty}
::selection{background:var(--accent);color:var(--on-accent)}
.muted{color:var(--muted)}
.small{font-size:13px}
.num{font-family:var(--mono);font-variant-numeric:tabular-nums;font-weight:600}
.hide-mobile{display:initial}

/* الخلفية الحية — هادئة جدًا، مجرد وهج نحاسي بعيد */
.fx-bg{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;contain:strict}
.fx-sky{position:absolute;inset:0;
  background:radial-gradient(80% 50% at 50% -10%,rgba(224,138,79,.07),transparent 70%)}
.fx-aurora{position:absolute;inset:-30%;filter:blur(120px);opacity:calc(.55*var(--fx));will-change:transform}
.fx-blob{position:absolute;width:56vmax;height:56vmax;border-radius:50%;will-change:transform;
  background:radial-gradient(circle at 50% 50%,rgba(224,138,79,.10),transparent 62%)}
.fx-blob.b2{background:radial-gradient(circle at 50% 50%,rgba(63,163,155,.07),transparent 62%)}
.fx-blob.b1{inset-inline-start:-12vmax;inset-block-start:-18vmax;animation:fxDrift1 58s var(--ease-soft) infinite}
.fx-blob.b2{inset-inline-end:-16vmax;inset-block-start:-8vmax;animation:fxDrift2 72s var(--ease-soft) infinite}
.fx-blob.b3{inset-inline-start:14vmax;inset-block-end:-30vmax;opacity:.55;animation:fxDrift3 86s var(--ease-soft) infinite}
@keyframes fxDrift1{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(4vmax,3vmax,0) scale(1.08)}}
@keyframes fxDrift2{0%,100%{transform:translate3d(0,0,0) scale(1.05)}50%{transform:translate3d(-5vmax,4vmax,0) scale(.95)}}
@keyframes fxDrift3{0%,100%{transform:translate3d(0,0,0) scale(.97)}50%{transform:translate3d(3vmax,-5vmax,0) scale(1.08)}}
.fx-grain{position:absolute;inset:0;opacity:.03;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='140' height='140' filter='url(%23n)'/%3E%3C/svg%3E")}
/* داخل تطبيق الشِل الخلفية تكاد تختفي حتى لا تشتّت القراءة */
body[data-shell="app"] .fx-bg{--fx:.3}
body[data-shell="app"] .fx-grain{display:none}

/* ── 03 App shell — ريل + سياق + محتوى ─────────────────────────────────── */
.app-shell{display:grid;grid-template-columns:var(--rail-w) var(--ctx-w) minmax(0,1fr);
  min-height:100vh;background:var(--bg)}
.app-shell.no-ctx{grid-template-columns:var(--rail-w) minmax(0,1fr)}
.app-shell.ws{grid-template-columns:var(--rail-w) 250px minmax(0,1fr) var(--brief-w)}

.rail{border-inline-end:1px solid var(--line);background:var(--rail);
  padding:16px 0;display:flex;flex-direction:column;align-items:center;gap:8px;
  position:sticky;top:0;height:100vh}
.rail-logo{width:32px;height:32px;border-radius:var(--r-sm);background:var(--accent2);
  display:grid;place-items:center;color:#fff;font-family:var(--mono);font-size:14px;font-weight:600;
  margin-bottom:12px;flex:0 0 auto}
.rail-item{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;
  color:var(--muted);background:transparent;border:0;flex:0 0 auto;
  transition:color var(--d-2) var(--ease-soft),background-color var(--d-2) var(--ease-soft)}
.rail-item:hover{color:var(--text);background:var(--surface2)}
.rail-item.active{background:var(--surface3);color:var(--accent)}
.rail-item svg{width:19px;height:19px}
.rail-avatar{margin-top:auto;width:38px;height:38px;border-radius:50%;background:var(--surface3);
  display:grid;place-items:center;font-size:12.5px;font-weight:700;color:var(--muted);flex:0 0 auto}

.ctx{border-inline-end:1px solid var(--line);background:var(--panel);
  padding:20px 16px;display:flex;flex-direction:column;gap:22px;
  position:sticky;top:0;height:100vh;overflow:auto}
.ctx-head{font-size:12.5px;color:var(--muted);font-weight:700}
.ctx-head b{display:block;font-size:15px;color:var(--text);margin-top:3px;font-weight:700}
.ctx-group{display:flex;flex-direction:column;gap:2px}
.ctx-label{font-size:11.5px;color:var(--muted);font-weight:700;padding:0 10px 8px}
.ctx-item{display:flex;justify-content:space-between;align-items:center;gap:10px;
  padding:9px 10px;border-radius:var(--r-sm);font-size:14px;color:var(--muted);
  transition:background-color var(--d-2) var(--ease-soft),color var(--d-2) var(--ease-soft)}
.ctx-item:hover{color:var(--text);background:var(--surface2)}
.ctx-item.active{background:var(--surface3);color:var(--text);font-weight:700}
.ctx-item span{font-family:var(--mono);font-size:12px;color:var(--muted)}
.ctx-note{margin-top:auto;background:var(--surface);border:1px solid var(--line2);
  border-radius:13px;padding:14px}
.ctx-note b{display:block;font-size:12.5px;font-weight:700;margin-bottom:6px}
.ctx-note p{margin:0 0 12px;font-size:12.5px;color:var(--muted);line-height:1.65}
.ctx-foot{margin-top:auto;font-size:12.5px;color:var(--muted);line-height:1.7}

.app-main{display:flex;flex-direction:column;min-width:0}
.topbar{height:var(--top-h);border-bottom:1px solid var(--line);display:flex;
  align-items:center;justify-content:space-between;gap:16px;padding:0 28px;
  position:sticky;top:0;z-index:20;background:color-mix(in oklab,var(--bg) 92%,transparent);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.crumb{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--muted);min-width:0}
.crumb b{color:var(--text);font-size:14px;font-weight:700}
.crumb a:hover{color:var(--text)}
.topbar-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.tool{padding:8px 13px;border-radius:var(--r-sm);border:1px solid var(--line2);background:transparent;
  font-size:12.5px;font-weight:700;color:var(--muted);display:inline-flex;align-items:center;gap:8px;
  transition:color var(--d-2) var(--ease-soft),border-color var(--d-2) var(--ease-soft)}
.tool:hover{color:var(--text);border-color:var(--line3)}
.tool svg{width:15px;height:15px}
.app-body{padding:28px;min-width:0;flex:1}

/* ── 04 Marketing chrome ───────────────────────────────────────────────── */
.container{width:min(1240px,calc(100% - 48px));margin-inline:auto}
header{position:sticky;top:0;z-index:40;border-bottom:1px solid var(--line);
  background:color-mix(in oklab,var(--bg) 90%,transparent);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.nav{height:68px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:inline-flex;align-items:center;gap:10px;font-size:15px;font-weight:700;letter-spacing:-.3px}
.brand::before{content:"D";width:26px;height:26px;border-radius:8px;background:var(--accent2);
  display:grid;place-items:center;color:#fff;font-family:var(--mono);font-size:13px;font-weight:600;flex:0 0 auto}
.nav-links{display:flex;align-items:center;gap:10px}
.nav-links>span.muted.small{font-size:14px;font-weight:700}
.footer{padding:26px 0;border-top:1px solid var(--line);color:var(--muted);font-size:12.5px}
.footer .container{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.section{padding:56px 0}
.page-head{padding:28px 0 22px;display:flex;align-items:end;justify-content:space-between;gap:20px}
.page-head h1{margin:6px 0 0}
.page-head .muted.small{font-size:13.5px}
.sticky{position:sticky;top:calc(var(--top-h) + 18px)}

/* ── 05 Buttons ────────────────────────────────────────────────────────── */
.btn{border:1px solid transparent;border-radius:var(--r);padding:12px 20px;min-height:44px;
  background:var(--accent);color:var(--on-accent);font-weight:700;font-size:14px;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  box-shadow:0 8px 24px rgba(224,138,79,.24);
  transition:transform var(--d-1) var(--ease-out),filter var(--d-2) var(--ease-soft),
             background-color var(--d-2) var(--ease-soft),border-color var(--d-2) var(--ease-soft),
             box-shadow var(--d-2) var(--ease-soft)}
.btn:hover{filter:brightness(1.08);transform:translateY(-1px);box-shadow:0 12px 30px rgba(224,138,79,.3)}
.btn:active{transform:none;box-shadow:0 4px 14px rgba(224,138,79,.22)}
.btn.secondary{background:var(--surface2);color:var(--text);border-color:var(--line3);box-shadow:none}
.btn.secondary:hover{background:var(--surface3);border-color:var(--muted);filter:none;box-shadow:none}
.btn.ghost{background:transparent;color:var(--muted);border-color:transparent;box-shadow:none}
.btn.ghost:hover{color:var(--text);background:var(--surface2);filter:none;box-shadow:none;transform:none}
.btn.good{background:var(--good);color:#0A0C0D;box-shadow:0 8px 24px rgba(79,183,131,.2)}
.btn.good:hover{box-shadow:0 12px 30px rgba(79,183,131,.26)}
.btn.bad{background:var(--bad);color:#0A0C0D;box-shadow:0 8px 24px rgba(224,104,95,.2)}
.btn:disabled{opacity:.4;cursor:not-allowed;transform:none;filter:none;box-shadow:none;
  background:var(--surface2);color:var(--muted);border-color:var(--line2)}

/* ── 06 Motion ─────────────────────────────────────────────────────────── */
.reveal{opacity:0;transform:translate3d(0,16px,0);
  transition:opacity var(--d-5) var(--ease-out),transform var(--d-5) var(--ease-out);
  transition-delay:var(--rd,0ms);will-change:transform,opacity}
.reveal.is-in{opacity:1;transform:none}
.reveal-done{will-change:auto}
@keyframes breathe{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.75)}}
@keyframes dot3{0%,60%,100%{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}
@keyframes sheen{0%{transform:translateX(-100%)}55%,100%{transform:translateX(120%)}}
@keyframes caret{0%,49%{opacity:1}50%,100%{opacity:0}}

/* ── 07 Landing ────────────────────────────────────────────────────────── */
.hero{display:grid;grid-template-columns:1.02fr .98fr;gap:56px;align-items:center;
  padding:76px 0 64px}
.eyebrow{display:inline-flex;align-items:center;gap:9px;padding:7px 14px;border-radius:var(--r-pill);
  border:1px solid var(--line2);background:var(--surface);font-size:12.5px;font-weight:700;color:var(--muted)}
.eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);
  animation:breathe 2.8s ease-in-out infinite}
.hero h1{font-size:clamp(38px,5.2vw,62px);font-weight:800;letter-spacing:-2.8px;line-height:1.06;
  margin:22px 0 20px;max-width:17ch}
.hero h1 .grad{color:var(--accent)}
.hero p{margin:0 0 30px;font-size:17.5px;line-height:1.8;color:var(--muted);max-width:46ch}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.hero-stats{display:flex;gap:30px;margin-top:38px;padding-top:26px;border-top:1px solid var(--line);flex-wrap:wrap}
.hero-stats b{display:block;font-family:var(--mono);font-size:26px;font-weight:600;letter-spacing:-.6px}
.hero-stats span{font-size:13px;color:var(--muted)}

/* كارت الجلسة الحية */
.hero-card{background:var(--surface);border:1px solid var(--line2);border-radius:18px;padding:22px;
  box-shadow:0 26px 60px rgba(0,0,0,.5)}
.hero-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}
.hero-card-head>div{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700;color:var(--muted)}
.hero-card-head>div::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent);
  animation:breathe 2.6s ease-in-out infinite}
.hero-card-head span{font-family:var(--mono);font-size:12px;color:var(--muted)}
.chatline{padding:13px 16px;border-radius:14px 14px 14px 4px;margin:0 0 14px;line-height:1.7;font-size:14.5px;
  background:var(--surface3);max-width:86%;align-self:flex-start}
.hero-card .chat{display:flex;flex-direction:column;gap:0}
.chatline.user{background:var(--surface3);border:0;margin-inline-end:auto}
.chatline.ai{background:transparent;border:1px solid var(--line2);border-radius:14px 14px 4px 14px;
  margin-inline-start:auto;margin-inline-end:0;max-width:90%}
.chatline .why{margin-top:12px;padding-top:11px;border-top:1px dashed var(--line3);
  font-size:12px;color:var(--muted);line-height:1.65}

/* المراحل الثلاث */
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line2)}
.feature-card{padding:26px 24px;border-inline-end:1px solid var(--line2);background:transparent;border-radius:0}
.feature-card:first-child{padding-inline-start:0}
.feature-card:last-child{border-inline-end:0;padding-inline-end:0}
.feature-card h3{font-family:var(--mono);font-size:13px;color:var(--accent);font-weight:600;margin:0}
.feature-card b{display:block;font-size:21px;font-weight:700;letter-spacing:-.6px;margin:10px 0}
.feature-card p{margin:0;font-size:14.5px;line-height:1.75;color:var(--muted);max-width:30ch}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:38px}
.section-head h2{margin:0;font-size:34px;letter-spacing:-1.4px;max-width:20ch}
.section-head span{font-size:13.5px;color:var(--muted)}

/* معاينة التقرير في الصفحة التسويقية */
.preview{display:grid;grid-template-columns:.85fr 1.15fr;gap:44px;align-items:center}
.preview-card{background:var(--surface);border:1px solid var(--line2);border-radius:18px;padding:24px;
  box-shadow:0 22px 50px rgba(0,0,0,.45)}
.preview-head{display:flex;justify-content:space-between;align-items:start;
  padding-bottom:20px;border-bottom:1px solid var(--line2)}
.preview-head b{display:block;font-size:20px;font-weight:700;letter-spacing:-.6px;margin-top:4px}

.card,.report-card,.side-card{background:var(--surface);border:1px solid var(--line2);
  border-radius:var(--r-md);padding:20px}

/* ── 08 Auth — شاشة مقسومة ─────────────────────────────────────────────── */
.auth-wrap{min-height:100vh;display:grid;grid-template-columns:1fr 1.08fr}
.auth-form{padding:56px 64px;display:flex;flex-direction:column;justify-content:space-between;gap:32px}
.auth-card{max-width:400px;width:100%;align-self:center;background:transparent;border:0;padding:0}
.auth-card h1{margin:0 0 8px;font-size:36px;letter-spacing:-1.6px}
.auth-card>p.muted{margin:0 0 32px;font-size:15px}
.auth-card .btn{width:100%;height:52px;font-size:15.5px;margin-top:6px}
.auth-switch{font-size:14px;color:var(--muted)}
.auth-switch b{color:var(--accent)}
.auth-side{background:var(--surface);border-inline-start:1px solid var(--line2);padding:56px;
  display:flex;flex-direction:column;justify-content:center;gap:26px}
.auth-side-label{font-size:12.5px;font-weight:700;color:var(--muted)}
.auth-quote{font-size:30px;font-weight:800;letter-spacing:-1.3px;line-height:1.35;max-width:24ch;margin:0}
.auth-person{display:flex;align-items:center;gap:12px}
.auth-person i{width:38px;height:38px;border-radius:50%;background:var(--surface3);display:grid;
  place-items:center;font-size:13px;font-weight:700;color:var(--muted);font-style:normal;flex:0 0 auto}
.auth-person b{display:block;font-size:14px;font-weight:700}
.auth-person span{font-size:12.5px;color:var(--muted)}
.auth-stats{margin-top:14px;padding-top:26px;border-top:1px solid var(--line2);
  display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.auth-stats b{display:block;font-family:var(--mono);font-size:24px;font-weight:600}
.auth-stats span{font-size:12.5px;color:var(--muted)}

/* ── 09 Forms ──────────────────────────────────────────────────────────── */
.form-group{margin:0 0 18px}
.label{display:block;font-size:12.5px;font-weight:700;color:var(--muted);margin-bottom:8px}
.input,.textarea{width:100%;border:1px solid var(--line3);border-radius:var(--r);background:var(--surface);
  padding:0 16px;height:50px;outline:none;font-size:15px;
  transition:border-color var(--d-2) var(--ease-soft),box-shadow var(--d-2) var(--ease-soft)}
.input::placeholder,.textarea::placeholder{color:var(--muted);opacity:.7}
.input:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(224,138,79,.14)}
.textarea{min-height:128px;height:auto;padding:14px 16px;resize:vertical;line-height:1.75}
.alert{padding:13px 15px;border-radius:var(--r);margin:0 0 16px;font-size:13.5px;line-height:1.7;
  display:flex;gap:10px;align-items:flex-start;border:1px solid}
.alert::before{content:"";width:16px;height:16px;flex:0 0 auto;margin-top:4px;background:currentColor;
  -webkit-mask-size:100%;mask-size:100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}
.alert.error{background:var(--bad-soft);border-color:rgba(224,104,95,.35);color:var(--bad)}
.alert.error::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round'%3E%3Cpath d='M4 20h16L12 5z'/%3E%3Cpath d='M12 11v4M12 17.6v.2'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round'%3E%3Cpath d='M4 20h16L12 5z'/%3E%3Cpath d='M12 11v4M12 17.6v.2'/%3E%3C/svg%3E")}
.alert.success{background:var(--good-soft);border-color:rgba(79,183,131,.35);color:var(--good)}
.alert.success::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7'/%3E%3C/svg%3E")}

/* ── 10 Projects — قائمة جدولية ────────────────────────────────────────── */
.plist{display:block}
.plist-head,.project-card{display:grid;grid-template-columns:1.7fr .9fr .8fr 1fr .5fr;
  align-items:center;gap:12px}
.plist-head{padding:0 16px 12px;font-size:12px;color:var(--muted);font-weight:700;
  border-bottom:1px solid var(--line2)}
.project-card{padding:17px 16px;border-bottom:1px solid var(--line);border-radius:var(--r);
  background:transparent;transition:background-color var(--d-2) var(--ease-soft)}
.project-card:hover{background:var(--surface)}
.project-card b{font-size:15.5px;font-weight:700;letter-spacing:-.3px;display:block}
.project-card p{margin:3px 0 0;font-size:13px;color:var(--muted);line-height:1.6;
  display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.project-card .status{justify-self:start}
.project-card .pct{font-family:var(--mono);font-size:14px;margin-bottom:6px;display:block}
.project-card .progress{width:74px}
.project-card time{font-size:13px;color:var(--muted)}
.project-card .go{justify-self:end;font-size:13px;font-weight:700;color:var(--accent);white-space:nowrap}

/* الحالة الفارغة */
.empty{display:grid;place-items:center;padding:60px 20px;text-align:center}
.empty-inner{max-width:560px}
.empty-icon{width:54px;height:54px;border-radius:15px;background:var(--surface3);display:grid;
  place-items:center;margin:0 auto 22px;color:var(--accent)}
.empty h2{margin:0 0 12px;font-size:29px;letter-spacing:-1.2px}
.empty p{margin:0 0 26px;font-size:15.5px;line-height:1.8;color:var(--muted)}
.empty-chips{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:18px}

/* ── 11 Workspace — ثلاث لوحات ─────────────────────────────────────────── */
.track{display:flex;flex-direction:column;gap:1px}
.track-item{display:flex;align-items:center;gap:10px;padding:9px 8px;font-size:13.5px;color:var(--muted);
  border-radius:var(--r-sm)}
.track-item i{width:16px;height:16px;border-radius:50%;border:1px solid var(--line3);flex:0 0 auto;
  display:grid;place-items:center;font-style:normal}
.track-item.done i{background:var(--good-soft);border-color:transparent;color:var(--good)}
.track-item.done i::before{content:"";width:9px;height:9px;background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7'/%3E%3C/svg%3E") no-repeat 100%/100%;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7'/%3E%3C/svg%3E") no-repeat 100%/100%}
.track-item.active{background:var(--surface3);color:var(--text);font-weight:700;padding:10px 8px}
.track-item.active i{border:2px solid var(--accent)}

.ring-card{display:flex;align-items:center;gap:14px;background:var(--surface);
  border:1px solid var(--line2);border-radius:13px;padding:14px}
.ring{width:52px;height:52px;flex:0 0 auto}
.ring circle{fill:none;stroke-width:10;stroke-linecap:round}
.ring .bgc{stroke:#1B2124}
.ring .fgc{stroke:var(--accent);stroke-dasharray:339;
  stroke-dashoffset:calc(339 - 339 * var(--p,0));
  transform:rotate(-90deg);transform-origin:50% 50%;
  transition:stroke-dashoffset var(--d-5) var(--ease-out)}
.ring-card b{display:block;font-family:var(--mono);font-size:24px;font-weight:600;letter-spacing:-1px}
.ring-card span{font-size:12.5px;color:var(--muted)}

.chat-panel{display:flex;flex-direction:column;min-width:0;flex:1;background:transparent;border:0}
.chat-head{min-height:var(--top-h);border-bottom:1px solid var(--line);display:flex;align-items:center;
  justify-content:space-between;gap:16px;padding:0 26px;flex:0 0 auto}
.chat-head .who{display:flex;align-items:center;gap:11px;min-width:0}
.chat-head .who>div{min-width:0}
.chat-head b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chat-head .who i{width:28px;height:28px;border-radius:var(--r-sm);background:var(--surface3);
  display:grid;place-items:center;color:var(--accent);flex:0 0 auto}
.chat-head b{font-size:14.5px;font-weight:700;display:block}
.chat-head .muted.small{font-size:12px}

.messages{flex:1;overflow:auto;padding:26px 26px 0;display:flex;flex-direction:column;gap:20px;
  overscroll-behavior:contain;scroll-behavior:smooth}
.messages::-webkit-scrollbar{width:8px}
.messages::-webkit-scrollbar-thumb{background:var(--line3);border-radius:9px}
.topic-mark{align-self:center;font-size:12px;color:var(--muted);background:var(--surface);
  border:1px solid #1B2124;border-radius:var(--r-pill);padding:5px 14px;flex:0 0 auto}
.bubble{max-width:80%;font-size:15px;line-height:1.7;white-space:pre-wrap;
  animation:bubbleIn var(--d-4) var(--ease-out) both}
@keyframes bubbleIn{from{opacity:0;transform:translate3d(0,8px,0)}to{opacity:1;transform:none}}
.bubble.user{align-self:flex-start;background:var(--surface3);border-radius:14px 14px 14px 4px;
  padding:14px 17px}
.bubble.ai{align-self:flex-end;max-width:82%;background:transparent;color:var(--muted);padding:0}
.question-card{background:var(--surface);border:1px solid var(--line3);border-radius:var(--r-lg);
  padding:20px;margin-top:14px;position:relative;overflow:hidden}
.question-card::before{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:3px;
  background:var(--accent)}
.question-card::after{content:"السؤال الحالي";display:block;font-size:12px;font-weight:700;
  color:var(--accent);margin-bottom:10px;order:-1}
.question-card{display:flex;flex-direction:column}
.question-card>b{font-size:19px;font-weight:700;letter-spacing:-.5px;line-height:1.55;color:var(--text)}
.why{margin-top:14px;padding-top:13px;border-top:1px dashed var(--line3);
  font-size:12.5px;color:var(--muted);line-height:1.7}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.chip{padding:10px 15px;border-radius:10px;border:1px solid var(--line3);background:transparent;
  font-size:13.5px;font-weight:700;color:var(--muted);min-height:44px;
  transition:color var(--d-2) var(--ease-soft),border-color var(--d-2) var(--ease-soft),
             background-color var(--d-2) var(--ease-soft)}
.chip:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}
.typing{align-self:flex-end;display:inline-flex;gap:5px;align-items:center;padding:12px 16px;
  border:1px solid var(--line2);border-radius:14px;max-width:none;background:transparent}
.typing i{width:6px;height:6px;border-radius:50%;background:var(--muted);display:block;
  animation:dot3 1.3s ease-in-out infinite}
.typing i:nth-child(2){animation-delay:.16s}
.typing i:nth-child(3){animation-delay:.32s}

.composer{border-top:1px solid var(--line);padding:18px 26px 22px;flex:0 0 auto;display:block}
.composer-box{background:var(--surface);border:1px solid var(--line3);border-radius:var(--r-lg);
  padding:14px 16px;transition:border-color var(--d-2) var(--ease-soft),box-shadow var(--d-2) var(--ease-soft)}
.composer-box:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px rgba(224,138,79,.12)}
.composer .textarea{border:0;background:transparent;padding:0;min-height:44px;max-height:150px;
  font-size:15px;width:100%}
.composer .textarea:focus{border:0;box-shadow:none}
.composer-foot{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;
  margin-top:12px;padding-top:12px;border-top:1px solid #1B2124}
.composer-hint{display:flex;gap:14px;font-size:12.5px;color:var(--muted);flex-wrap:wrap}
.composer-actions{display:flex;gap:9px;align-items:center}

/* موجز المشروع */
.brief{border-inline-start:1px solid var(--line);background:var(--panel);display:flex;
  flex-direction:column;min-width:0;position:sticky;top:0;height:100vh}
.brief-head{height:var(--top-h);border-bottom:1px solid var(--line);display:flex;align-items:center;
  justify-content:space-between;padding:0 18px;flex:0 0 auto}
.brief-head b{font-size:14px;font-weight:700}
.brief-body{padding:18px;display:flex;flex-direction:column;gap:18px;overflow:auto;flex:1}
.conflict{background:var(--warn-soft);border:1px solid var(--warn-line);border-radius:13px;padding:14px}
.conflict-title{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;
  color:var(--warn);margin-bottom:8px}
.conflict-title svg{width:14px;height:14px}
.conflict p{margin:0;font-size:13px;line-height:1.7;color:var(--text)}
.side-card{background:transparent;border:0;border-radius:0;padding:0}
.side-card h3{margin:0 0 10px;font-size:11.5px;color:var(--muted);font-weight:700}
.memory-row{display:flex;justify-content:space-between;gap:10px;padding-bottom:11px;
  margin-bottom:12px;border-bottom:1px solid var(--line)}
.memory-row:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.memory-row b{font-size:12.5px;color:var(--muted);font-weight:700;flex:0 0 auto}
.memory-row span{font-size:13px;text-align:end}
.gap-row{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--muted);margin-bottom:8px}
.gap-row::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--accent);flex:0 0 auto}
#finalCard{margin-top:auto;background:var(--surface);border:1px solid var(--line2);
  border-radius:13px;padding:15px}
#finalCard h3{font-size:13px;color:var(--text);margin-bottom:6px}
#finalCard p{margin:0 0 12px;font-size:12.5px;color:var(--muted);line-height:1.65}
#finalCard .btn{width:100%}
#progressText{font-family:var(--mono);font-weight:600}

/* ── 12 Report — منطق مستند ────────────────────────────────────────────── */
.report-wrap{display:grid;grid-template-columns:var(--toc-w) minmax(0,1fr);min-width:0;flex:1}
.toc{border-inline-end:1px solid var(--line);padding:26px 18px;background:var(--panel);
  position:sticky;top:var(--top-h);height:calc(100vh - var(--top-h));overflow:auto}
.toc-label{font-size:11.5px;color:var(--muted);font-weight:700;margin-bottom:12px}
.toc-list{display:flex;flex-direction:column;gap:1px;font-size:13.5px}
.toc-item{padding:8px 10px;border-radius:8px;color:var(--muted);
  transition:background-color var(--d-2) var(--ease-soft),color var(--d-2) var(--ease-soft)}
.toc-item:hover{color:var(--text);background:var(--surface2)}
.toc-item.active{background:var(--surface3);color:var(--text);font-weight:700}
.toc-foot{margin-top:26px;padding-top:20px;border-top:1px solid var(--line);
  font-size:12.5px;color:var(--muted);line-height:1.7}

.report-main{padding:34px 40px 190px;min-width:0;display:block}
.doc-head{display:flex;justify-content:space-between;align-items:start;gap:24px;flex-wrap:wrap}
.doc-head h1{margin:14px 0 8px;font-size:40px;letter-spacing:-1.8px;max-width:22ch}
.doc-head .muted.small{font-size:14px}
.score-grid{display:flex;gap:26px;background:var(--surface);border:1px solid var(--line2);
  border-radius:var(--r-lg);padding:20px 24px;flex-wrap:wrap}
.score{min-width:78px}
.score span.muted{font-size:12px;font-weight:700;display:block}
.score strong{display:block;font-family:var(--mono);font-size:32px;font-weight:600;letter-spacing:-1.4px;
  line-height:1.2;font-variant-numeric:tabular-nums}
.score .bar{height:3px;width:78px;border-radius:9px;background:#1B2124;overflow:hidden}
.score .bar i{display:block;height:100%;background:var(--accent);border-radius:9px;
  transition:width var(--d-5) var(--ease-out)}
.score.teal .bar i{background:var(--teal)}
.score.text strong{font-family:var(--font);font-size:26px;font-weight:700;letter-spacing:-.8px;margin-top:5px}
.score-sep{width:1px;background:var(--line2);align-self:stretch}

.lede{margin:30px 0 0;font-size:18px;line-height:1.85;max-width:74ch;
  padding-block:26px;border-block:1px solid var(--line)}
.report-sec{margin-top:40px;padding-top:28px;border-top:1px solid var(--line);scroll-margin-top:80px}
.report-sec>h2{margin:0 0 20px}
.report-card{background:var(--surface);border:1px solid var(--line2);border-radius:var(--r-md);padding:20px}
.report-card h3{margin:0 0 12px;font-size:13.5px;font-weight:700}
.columns2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:30px}
.split h3{font-size:13px;font-weight:700;color:var(--accent);margin:0 0 10px}
.split p{margin:0;font-size:15.5px;line-height:1.8;color:var(--muted)}
.clean-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:9px;
  font-size:14px;color:var(--muted)}
.clean-list li{line-height:1.6}
.mvp{background:rgba(224,138,79,.07);border:1px solid var(--accent-line);border-radius:var(--r-md);padding:20px}
.mvp h3{color:var(--accent)}
.mvp .clean-list{font-size:14.5px;color:var(--text)}
.pill-list{display:flex;gap:8px;flex-wrap:wrap}
.pill{padding:7px 13px;border-radius:var(--r-pill);border:1px solid var(--line2);
  font-size:12.5px;font-weight:700;color:var(--muted)}
.flow-list{display:flex;align-items:stretch;background:var(--surface);border:1px solid var(--line2);
  border-radius:var(--r-md);overflow:hidden}
.flow-step{flex:1;padding:18px;border-inline-end:1px solid var(--line2);min-width:0;display:block}
.flow-step:last-child{border-inline-end:0}
.flow-num{font-family:var(--mono);font-size:12px;color:var(--accent);font-weight:600;
  width:auto;height:auto;background:none;border-radius:0;display:block}
.flow-step b{display:block;font-size:14px;font-weight:700;margin-top:8px}
.flow-step .muted{font-size:12.5px;margin-top:5px;line-height:1.6;display:block}
.risk b{display:block;font-size:14px;font-weight:700}
.risk p{margin:3px 0 0;font-size:12.5px;color:var(--muted);line-height:1.6}
.risk+.risk{margin-top:13px}
.decision-row{display:flex;justify-content:space-between;gap:10px;padding-bottom:10px;
  margin-bottom:10px;border-bottom:1px solid #1B2124;font-size:14px}
.decision-row:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.decision-row span{color:var(--accent);font-weight:700;flex:0 0 auto}

/* شريط القرار السفلي */
.decision-bar{position:fixed;inset-inline:var(--rail-w) 0;inset-block-end:0;z-index:30;
  background:rgba(11,13,14,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border-top:1px solid var(--line2);padding:16px 32px;
  display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.estimate{background:var(--accent);color:var(--on-accent);border-radius:var(--r);padding:11px 18px;
  flex:0 0 auto}
.estimate .small{font-size:11.5px;font-weight:700;opacity:.72;color:var(--on-accent)}
.price{font-family:var(--mono);font-size:20px;font-weight:600;letter-spacing:-.7px;margin:0;
  color:var(--on-accent);font-variant-numeric:tabular-nums}
.decision-meta{font-size:13px;color:var(--muted);line-height:1.6;max-width:34ch}
.decision-grid{display:flex;gap:10px;flex-wrap:wrap;margin:0}

/* ── 13 Admin — Pipeline ───────────────────────────────────────────────── */
.admin-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.kpi{background:var(--surface);border:1px solid var(--line2);border-radius:var(--r-md);padding:18px}
.kpi span.muted{font-size:12.5px;font-weight:700}
.kpi strong{display:block;font-family:var(--mono);font-size:36px;font-weight:600;letter-spacing:-1.8px;
  margin-top:6px;line-height:1.1;font-variant-numeric:tabular-nums}
.kpi em{font-style:normal;font-size:12.5px;color:var(--muted);font-weight:700}
.kpi em.up{color:var(--good)}
.kpi em.warn{color:var(--warn)}
.pipeline{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:20px}
.pipe-col{display:flex;flex-direction:column;gap:10px;min-width:0}
.pipe-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:10px;
  border-bottom:2px solid var(--line3)}
.pipe-head b{font-size:13.5px}
.pipe-head span{font-family:var(--mono);font-size:12px;color:var(--muted)}
.pipe-col.discovery .pipe-head{border-bottom-color:var(--accent)}
.pipe-col.under_review .pipe-head{border-bottom-color:var(--warn)}
.pipe-col.ready .pipe-head{border-bottom-color:var(--teal)}
.pipe-col.approved .pipe-head{border-bottom-color:var(--good)}
.pipe-card{background:var(--surface);border:1px solid var(--line2);border-radius:13px;padding:14px;
  transition:border-color var(--d-2) var(--ease-soft)}
.pipe-card:hover{border-color:var(--line3)}
.pipe-card b{display:block;font-size:14px;font-weight:700;letter-spacing:-.2px}
.pipe-card .who{font-size:12.5px;color:var(--muted);margin-top:4px}
.pipe-card .progress{margin-top:11px}
.pipe-card .amount{font-family:var(--mono);font-size:13px;margin-top:9px;color:var(--teal)}
.table-wrap{overflow:auto;border:1px solid var(--line2);border-radius:var(--r-md);background:var(--surface)}
.table{border-collapse:collapse;width:100%;min-width:760px}
.table th,.table td{padding:14px 16px;border-bottom:1px solid var(--line);text-align:start;font-size:13.5px}
.table th{font-size:12px;color:var(--muted);font-weight:700;background:var(--panel)}
.table tbody tr:last-child td{border-bottom:0}
.table tbody tr{transition:background-color var(--d-2) var(--ease-soft)}
.table tbody tr:hover{background:var(--surface2)}
.table a:hover{color:var(--accent)}

/* ── 14 Status + Progress ──────────────────────────────────────────────── */
.status{display:inline-flex;align-items:center;gap:7px;padding:5px 11px;border-radius:var(--r-pill);
  font-size:12px;font-weight:700;background:var(--surface2);color:var(--muted);white-space:nowrap}
.dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex:0 0 auto}
.status.ready{background:var(--good-soft);color:var(--good)}
.status.approved{background:var(--good-soft);color:var(--good)}
.status.discovery{background:var(--accent-soft);color:var(--accent)}
.status.under_review{background:var(--warn-soft);color:var(--warn)}
.status.analysis_failed{background:var(--bad-soft);color:var(--bad)}
.status.discovery .dot,.status.under_review .dot{animation:breathe 2.8s ease-in-out infinite}
.progress{height:3px;border-radius:9px;background:#1B2124;overflow:hidden}
.progress span{display:block;height:100%;border-radius:9px;background:var(--accent);position:relative;
  transition:width var(--d-5) var(--ease-out)}
.progress.tall{height:6px}
.progress.good span{background:var(--good)}
.progress.warn span{background:var(--warn)}
.progress.bad span{background:var(--bad)}
.progress span::after{content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent);
  transform:translateX(-100%);animation:sheen 3s ease-in-out infinite}

/* ── 15 Mermaid ────────────────────────────────────────────────────────── */
.mermaid{overflow:auto;background:var(--surface);border:1px solid var(--line2);
  border-radius:var(--r-md);padding:22px;min-height:120px;text-align:center;margin-top:16px}
.mermaid svg{max-width:100%;height:auto}
.mermaid .node rect,.mermaid .node polygon,.mermaid .node circle{
  fill:var(--surface2)!important;stroke:var(--line3)!important;stroke-width:1px!important}
.mermaid .nodeLabel,.mermaid .label,.mermaid text{fill:var(--text)!important;color:var(--text)!important;
  font-family:var(--font)!important}
.mermaid .edgePath .path,.mermaid line,.mermaid path.flowchart-link{
  stroke:var(--muted)!important;stroke-width:1px!important}
.mermaid marker path,.mermaid .arrowheadPath{fill:var(--muted)!important;stroke:none!important}
.mermaid .edgeLabel,.mermaid .edgeLabel rect{background:transparent!important;fill:var(--surface)!important}
details{margin-top:16px}
details summary{cursor:pointer;padding:8px 0;font-size:12.5px;color:var(--muted);font-weight:700}
details pre{background:var(--surface2);border:1px solid var(--line2);border-radius:var(--r);
  padding:14px;font-size:12px;overflow:auto;font-family:var(--mono)}

/* ── 16 Loading ────────────────────────────────────────────────────────── */
.loading{display:inline-block;width:14px;height:14px;border:2px solid rgba(20,24,26,.3);
  border-top-color:currentColor;border-radius:50%;animation:spin .7s linear infinite;vertical-align:-2px}
@keyframes spin{to{transform:rotate(360deg)}}
.skeleton{position:relative;overflow:hidden;border-radius:var(--r);background:var(--surface2);
  color:transparent!important}
.skeleton::after{content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.06),transparent);
  transform:translateX(-100%);animation:sheen 1.6s ease-in-out infinite}

/* ── 17 A11y ───────────────────────────────────────────────────────────── */
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
/* إخفاء بالقص بدل الإزاحة خارج الشاشة — الإزاحة تُنشئ تمريرًا أفقيًا في RTL */
.skip{position:fixed;inset-inline-start:0;top:0;z-index:100;background:var(--accent);
  color:var(--on-accent);padding:10px 16px;border-radius:0 0 var(--r) 0;font-weight:700;
  clip-path:inset(50%);white-space:nowrap}
.skip:focus{clip-path:none}
@media (prefers-contrast:more){
  :root{--muted:#B4BDC2;--line:#2C3439;--line2:#3A4348}
  .fx-bg{display:none}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;
    transition-duration:.001ms!important}
  .reveal{opacity:1!important;transform:none!important}
  .fx-aurora{animation:none}
  html{scroll-behavior:auto}
}

/* ── 18 Responsive ─────────────────────────────────────────────────────── */
@media (max-width:1180px){
  .app-shell.ws{grid-template-columns:var(--rail-w) 220px minmax(0,1fr)}
  /* الدرج مثبَّت عند الحافة المنطقية end؛ في RTL هذه هي الحافة اليسرى،
     فالإخفاء يكون بالإزاحة يسارًا (سالب) لا يمينًا. */
  .app-shell.ws .brief{position:fixed;inset-block:0;inset-inline-end:0;width:min(360px,86vw);
    z-index:60;transform:translateX(100%);transition:transform var(--d-3) var(--ease-out);
    box-shadow:-20px 0 60px rgba(0,0,0,.5)}
  [dir="rtl"] .app-shell.ws .brief{transform:translateX(-100%)}
  .app-shell.ws .brief.open{transform:none!important}
  .brief-toggle{display:inline-flex!important}
}
@media (max-width:1000px){
  .hero{grid-template-columns:1fr;gap:40px;padding:48px 0}
  .preview{grid-template-columns:1fr;gap:28px}
  .auth-wrap{grid-template-columns:1fr}
  .auth-side{display:none}
  .auth-form{padding:40px 28px}
  .pipeline,.admin-kpis{grid-template-columns:1fr 1fr}
  .flow-list{flex-direction:column}
  .flow-step{border-inline-end:0;border-bottom:1px solid var(--line2)}
  .flow-step:last-child{border-bottom:0}
}
@media (max-width:900px){
  :root{--ctx-w:0px}
  .app-shell,.app-shell.ws,.app-shell.no-ctx{grid-template-columns:minmax(0,1fr)}
  .rail{display:none}
  .ctx{display:none}
  .report-wrap{grid-template-columns:1fr}
  .toc{display:none}
  .decision-bar{inset-inline:0;padding:12px 16px}
  .report-main{padding:24px 20px 210px}
  .app-body{padding:20px}
  .topbar{padding:0 20px}
  .doc-head h1{font-size:30px}
  .grid3{grid-template-columns:1fr}
  .feature-card{border-inline-end:0;border-bottom:1px solid var(--line2);padding-inline:0}
  .split,.columns2{grid-template-columns:1fr}
  /* شريط تنقّل سفلي بدل الريل — يقتطع 70px من ارتفاع الشِل حتى لا يغطي المُركِّب */
  .tabbar{display:grid!important}
  body[data-shell="app"] .app-shell{min-height:calc(100vh - 70px)}
  body[data-shell="app"] .brief{inset-block:0 70px;height:auto}
  body[data-shell="app"] .decision-bar{inset-block-end:70px}
  body[data-shell="app"] .report-main{padding-bottom:240px}
}
@media (max-width:760px){
  .container{width:min(100% - 32px,1240px)}
  .plist-head{display:none}
  .project-card{grid-template-columns:1fr;gap:9px;background:var(--surface);
    border:1px solid var(--line2);border-radius:15px;padding:15px;margin-bottom:10px}
  .project-card .status{justify-self:start}
  .project-card .progress{width:100%}
  .project-card .go{justify-self:start}
  .hero h1{font-size:36px;letter-spacing:-1.6px}
  .hero p{font-size:15px}
  .section-head{flex-direction:column;align-items:start;gap:12px}
  .section-head h2{font-size:26px}
  .page-head{flex-direction:column;align-items:start}
  .page-head .btn{width:100%}
  .score-grid{gap:16px;padding:16px}
  .score-sep{display:none}
  .bubble,.bubble.ai{max-width:92%}
  .messages{padding:18px 20px 0}
  .composer{padding:12px 20px 16px}
  /* الهيدر يضيق: نُبقي على زر الموجز فقط */
  .chat-head{padding:0 16px;gap:10px}
  .chat-head .who .muted.small{display:none}
  .chat-head .topbar-actions>.tool:not(.brief-toggle){display:none}
  .composer-hint{display:none}
  .composer-foot{justify-content:flex-end;border-top:0;padding-top:0;margin-top:8px}
  .decision-bar{flex-direction:column;align-items:stretch;gap:12px}
  .decision-grid{display:grid;grid-template-columns:1fr 1fr}
  .decision-meta{max-width:none}
  .admin-kpis,.pipeline{grid-template-columns:1fr}
  .hide-mobile{display:none}
  .auth-card h1{font-size:28px}
}

/* شريط التنقّل السفلي — موبايل فقط */
.tabbar{display:none;position:fixed;inset-inline:0;inset-block-end:0;z-index:50;height:70px;
  grid-template-columns:repeat(4,1fr);align-items:center;padding-bottom:8px;
  background:var(--panel);border-top:1px solid var(--line)}
.tabbar a{display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--muted);
  font-size:10.5px}
.tabbar a.active{color:var(--accent);font-weight:700}
.tabbar svg{width:20px;height:20px}
.brief-toggle{display:none}

/* ── 19 Print ──────────────────────────────────────────────────────────── */
@media print{
  @page{margin:16mm}
  :root{--bg:#fff;--surface:#fff;--surface2:#f6f6f4;--surface3:#f0f0ee;--panel:#fff;
    --text:#14181A;--muted:#4E565A;--line:#E2E0DC;--line2:#DAD5CD;--line3:#C9C4BC}
  body{background:#fff!important;color:#14181A!important}
  .fx-bg,.rail,.ctx,.topbar,.footer,header,.tabbar,.decision-grid,#meetingForm,
  .composer,.brief,.toc,details,.skip{display:none!important}
  .app-shell,.app-shell.ws,.app-shell.no-ctx,.report-wrap{grid-template-columns:1fr!important}
  .report-main{padding:0!important}
  .decision-bar{position:static;background:none;border:0;padding:0;margin-bottom:8mm}
  .estimate{background:#F4EBE2!important;color:#14181A!important;border:1px solid #DAD5CD!important}
  .price{color:#14181A!important}
  .report-card,.card,.kpi,.table-wrap,.score-grid,.mvp,.flow-list{break-inside:avoid;
    border:1px solid #DAD5CD!important;background:#fff!important}
  .reveal{opacity:1!important;transform:none!important}
  h1,h2,h3{break-after:avoid}
  a{color:#14181A!important}
}
