/* ==========================================================================
   SHEETA ROBOTICS — SHARED STYLESHEET
   نظام التصميم المشترك لكل صفحات الموقع
   Every page (index / robot-problems / training / gallery) loads ONLY this file.
   Do not add inline style="" attributes in the HTML — add a class here instead.
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. DESIGN TOKENS — لا تغيّر هذه القيم إلا لتغيير هوية الموقع كلها
   -------------------------------------------------------------------------- */
:root{
  --ink:#0B1B33;--panel:#0F2647;--panel-2:#143257;--line:rgba(255,255,255,0.09);
  --blue:#005AB4;--blue-light:#2E8BE6;--silver:#AEB4BC;--mist:#EEF1F4;--muted:#79818C;--maxw:1180px;
}

/* --------------------------------------------------------------------------
   2. BASE / TYPOGRAPHY
   -------------------------------------------------------------------------- */
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--ink);color:var(--mist);font-family:'Inter',sans-serif;-webkit-font-smoothing:antialiased;line-height:1.6;}
[dir="rtl"] body,body[dir="rtl"]{font-family:'IBM Plex Sans Arabic','Cairo',sans-serif;}
a{color:inherit;text-decoration:none;}
img{display:block;max-width:100%;}
h1,h2,h3,h4{font-family:'Space Grotesk',sans-serif;margin:0;line-height:1.12;}
[dir="rtl"] h1,[dir="rtl"] h2,[dir="rtl"] h3,[dir="rtl"] h4{font-family:'Cairo',sans-serif;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px;}
.mono{font-family:'JetBrains Mono',monospace;letter-spacing:0.05em;}
[dir="rtl"] .mono{font-family:'IBM Plex Sans Arabic',monospace;letter-spacing:0;}
.eyebrow{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:0.16em;color:var(--blue-light);text-transform:uppercase;}
[dir="rtl"] .eyebrow{font-family:'IBM Plex Sans Arabic';letter-spacing:0.04em;}
.grid-bg{background-image:linear-gradient(0deg,rgba(255,255,255,0.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.04) 1px,transparent 1px);background-size:28px 28px;}
:focus-visible{outline:2px solid var(--blue-light);outline-offset:2px;}

/* --------------------------------------------------------------------------
   3. NAV / HEADER — متطابق حرفيًا في كل الصفحات
   -------------------------------------------------------------------------- */
header{position:sticky;top:0;z-index:50;background:rgba(11,27,51,0.85);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);}
nav{display:flex;align-items:center;justify-content:space-between;height:68px;}
.brand{display:flex;align-items:center;gap:12px;}
.brand img{height:40px;width:auto;background:#fff;border-radius:50%;padding:2px;}
.brand .bt{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:17px;letter-spacing:0.02em;}
.brand .bt span{color:var(--blue-light);}
.navlinks{display:flex;gap:22px;align-items:center;}
.navlinks a{font-size:14px;color:var(--silver);transition:color .2s;white-space:nowrap;}
.navlinks a:hover{color:var(--mist);}
.navlinks a.active{color:var(--mist);border-bottom:2px solid var(--blue-light);padding-bottom:3px;}
.nav-cta{border:1px solid var(--blue-light);color:var(--mist);padding:9px 18px;border-radius:3px;font-size:13px;font-weight:600;}
.nav-cta:hover{background:var(--blue);}
.navlinks a.nav-cta.active{border-bottom:1px solid var(--blue-light);padding-bottom:9px;}
.lang-btn{background:none;border:1px solid var(--line);color:var(--mist);padding:8px 14px;border-radius:3px;font-size:13px;cursor:pointer;font-family:inherit;transition:border-color .2s;}
.lang-btn:hover{border-color:var(--blue-light);}
.burger{display:none;background:none;border:none;color:var(--mist);font-size:24px;line-height:1;cursor:pointer;padding:6px 8px;}
@media(max-width:1000px){
  .navlinks{
    display:none;position:absolute;top:100%;inset-inline:0;
    flex-direction:column;align-items:stretch;gap:0;
    background:var(--panel);border-bottom:1px solid var(--line);padding:6px 24px 20px;
  }
  .navlinks.open{display:flex;}
  .navlinks a{padding:13px 2px;border-bottom:1px solid var(--line);font-size:15px;}
  .navlinks a.active{border-bottom:1px solid var(--line);color:var(--blue-light);padding-bottom:13px;}
  .navlinks .nav-cta{margin-top:14px;text-align:center;border:1px solid var(--blue-light);padding:11px 18px;}
  .navlinks a.nav-cta.active{padding-bottom:11px;color:var(--mist);}
  .navlinks .lang-btn{margin-top:12px;}
  .burger{display:block;}
}

/* --------------------------------------------------------------------------
   4. HERO — الصفحة الرئيسية فقط
   -------------------------------------------------------------------------- */
.hero{position:relative;min-height:84vh;display:flex;align-items:center;overflow:hidden;border-bottom:1px solid var(--line);}
.hero-photo{position:absolute;inset:0;background-size:cover;background-position:center 42%;background-image:url('../img/hero-denso-teach-pendant.jpg');}
.hero-scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,27,51,0.97) 0%,rgba(11,27,51,0.93) 46%,rgba(11,27,51,0.58) 74%,rgba(11,27,51,0.32) 100%);}
[dir="rtl"] .hero-scrim{background:linear-gradient(270deg,rgba(11,27,51,0.97) 0%,rgba(11,27,51,0.93) 46%,rgba(11,27,51,0.58) 74%,rgba(11,27,51,0.32) 100%);}
.hero-content{position:relative;padding:80px 0;max-width:680px;}
.hero h1{font-size:clamp(32px,5.5vw,58px);font-weight:700;letter-spacing:-0.01em;margin:18px 0 0;}
.hero h1 .accent{color:var(--blue-light);}
.hero .sub{font-size:clamp(15px,2vw,19px);color:var(--silver);margin-top:20px;max-width:560px;}
.hero-actions{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap;}

/* --------------------------------------------------------------------------
   5. BUTTONS
   -------------------------------------------------------------------------- */
.btn{display:inline-block;padding:14px 28px;border-radius:3px;font-weight:600;font-size:15px;transition:all .2s;cursor:pointer;border:1px solid transparent;font-family:inherit;text-align:center;}
.btn-primary{background:var(--blue);color:#fff;}
.btn-primary:hover{background:var(--blue-light);}
.btn-ghost{border-color:var(--line);color:var(--mist);background:none;}
.btn-ghost:hover{border-color:var(--silver);}
.btn-block{width:100%;display:block;}
.btn-row{display:flex;gap:12px;flex-wrap:wrap;}
.btn-row .btn{flex:1;min-width:190px;}

/* --------------------------------------------------------------------------
   6. PAGE HERO — الصفحات الداخلية (problems / training / gallery)
   -------------------------------------------------------------------------- */
.page-hero{position:relative;padding:62px 0 56px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,var(--panel) 0%,var(--ink) 100%);}
.page-hero .wrap{position:relative;z-index:2;}
.page-hero h1{font-size:clamp(28px,4.6vw,46px);font-weight:700;letter-spacing:-0.01em;margin:16px 0 0;max-width:820px;}
.page-hero h1 .accent{color:var(--blue-light);}
.page-hero .lede{color:var(--silver);font-size:clamp(15px,1.9vw,18px);max-width:760px;margin:18px 0 0;}
.page-hero .meta{display:flex;gap:18px;flex-wrap:wrap;align-items:center;margin-top:22px;}
.updated{font-family:'JetBrains Mono',monospace;font-size:11.5px;color:var(--muted);letter-spacing:0.06em;border:1px solid var(--line);border-radius:3px;padding:5px 11px;display:inline-block;}
[dir="rtl"] .updated{font-family:'IBM Plex Sans Arabic';letter-spacing:0;}

/* --------------------------------------------------------------------------
   7. SECTION SHELL
   -------------------------------------------------------------------------- */
section{padding:84px 0;border-bottom:1px solid var(--line);}
.sec-head{margin-bottom:44px;max-width:660px;}
.sec-head h2{font-size:clamp(26px,4vw,38px);font-weight:600;margin-top:12px;}
.sec-head p{color:var(--silver);margin-top:14px;font-size:16px;}
.section-plain{padding:0;border:none;}      /* لأشرطة العرض بدون حشو */
.section-last{border-bottom:none;}          /* آخر قسم قبل الفوتر */
.section-tight{padding:56px 0;}

/* --------------------------------------------------------------------------
   8. AUDIENCE STRIP
   -------------------------------------------------------------------------- */
.aud{padding:28px 0;background:var(--panel);border-bottom:1px solid var(--line);}
.aud .wrap{display:flex;gap:24px;flex-wrap:wrap;justify-content:center;text-align:center;}
.aud .item{flex:1;min-width:240px;}
.aud .item h4{font-size:16px;color:var(--mist);margin-bottom:4px;}
.aud .item p{font-size:13.5px;color:var(--muted);margin:0;}

/* --------------------------------------------------------------------------
   9. BRAND CHIPS
   -------------------------------------------------------------------------- */
.brands{padding:32px 0;background:var(--panel);}
.brands .wrap{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:center;}
.brands .lbl{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--muted);letter-spacing:0.1em;margin-inline-end:8px;}
[dir="rtl"] .brands .lbl{font-family:'IBM Plex Sans Arabic';}
.brand-chip{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:15px;color:var(--silver);padding:6px 16px;border:1px solid var(--line);border-radius:3px;letter-spacing:0.03em;}

/* --------------------------------------------------------------------------
   10. SERVICE CARDS (صور + رقم + عنوان + وصف + tags)
   -------------------------------------------------------------------------- */
/* min(...) يمنع تجاوز عرض الشاشة على الهواتف الضيقة */
.svc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(340px,100%),1fr));gap:22px;}
.svc-card{background:var(--panel);border:1px solid var(--line);border-radius:6px;overflow:hidden;transition:transform .3s,border-color .3s;}
.svc-card:hover{transform:translateY(-4px);border-color:var(--blue-light);}
.svc-card .ph{aspect-ratio:4/3;overflow:hidden;position:relative;}
.svc-card .ph img{width:100%;height:100%;object-fit:cover;transition:transform .5s;}
.svc-card:hover .ph img{transform:scale(1.05);}
.svc-card .ph::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,38,71,0.6),transparent 55%);}
.svc-card .num{position:absolute;top:14px;inset-inline-start:16px;font-family:'JetBrains Mono',monospace;font-size:12px;color:#fff;background:var(--blue);padding:4px 10px;border-radius:3px;z-index:2;}
.svc-card .body{padding:22px 24px 26px;}
.svc-card h3{font-size:20px;font-weight:600;margin-bottom:10px;}
.svc-card p{font-size:14px;color:var(--silver);line-height:1.6;}
.svc-card .apps{margin-top:14px;display:flex;flex-wrap:wrap;gap:6px;}
.svc-card .apps span{font-size:11.5px;color:var(--muted);border:1px solid var(--line);border-radius:3px;padding:3px 9px;font-family:'JetBrains Mono',monospace;}
[dir="rtl"] .svc-card .apps span{font-family:'IBM Plex Sans Arabic';}

/* --------------------------------------------------------------------------
   11. APPLICATIONS BAND
   -------------------------------------------------------------------------- */
.apps-band{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:6px;overflow:hidden;}
.app{background:var(--ink);padding:22px 18px;text-align:center;}
.app .ic{display:flex;align-items:center;justify-content:center;height:48px;}
.app .ic img{width:48px;height:48px;transition:transform .3s;}
.app:hover .ic img{transform:scale(1.12);}
.app .t{font-family:'Space Grotesk';font-weight:600;font-size:15px;margin-top:8px;color:var(--mist);}
[dir="rtl"] .app .t{font-family:'Cairo';}
.app .s{font-size:12px;color:var(--muted);margin-top:3px;}

/* --------------------------------------------------------------------------
   12. CREDENTIALS GRID (يُعاد استخدامه في بطاقات الحجز)
   -------------------------------------------------------------------------- */
.cred-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:6px;overflow:hidden;}
.cred{background:var(--ink);padding:26px 24px;}
.cred .big{font-family:'Space Grotesk';font-weight:700;font-size:22px;color:var(--mist);}
[dir="rtl"] .cred .big{font-family:'Cairo';}
.cred .big span{color:var(--blue-light);}
.cred .lbl{font-size:13px;color:var(--muted);margin-top:6px;line-height:1.5;}

.cred ul{margin:14px 0 0;padding-inline-start:18px;color:var(--silver);font-size:13.5px;}
.cred ul li{margin-bottom:5px;}
.cred ul li::marker{color:var(--blue-light);}

/* بطاقات الحجز — 3 أعمدة على الديسكتوب */
.book-grid{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));}
.cred.book{display:flex;flex-direction:column;padding:32px 28px 34px;}
.cred.book .ic{font-size:26px;margin-bottom:12px;}
.cred.book .lbl{flex:1 1 auto;font-size:13.5px;color:var(--silver);margin-bottom:22px;}
.cred.book .book-meta{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--muted);letter-spacing:0.06em;margin-top:12px;}
[dir="rtl"] .cred.book .book-meta{font-family:'IBM Plex Sans Arabic';letter-spacing:0;}

/* --------------------------------------------------------------------------
   12b. PUBLICATIONS — أبحاث محكّمة بروابط DOI (أثقل إشارة ثقة في GEO)
   -------------------------------------------------------------------------- */
.pubs{display:grid;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:6px;overflow:hidden;}
.pub{background:var(--ink);padding:26px 28px;}
.pub .pub-n{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:0.14em;color:var(--blue-light);display:block;margin-bottom:10px;}
[dir="rtl"] .pub .pub-n{font-family:'IBM Plex Sans Arabic';letter-spacing:0.02em;}
.pub h3{font-size:17px;font-weight:600;line-height:1.38;margin-bottom:10px;}
.pub h3 a:hover{color:var(--blue-light);text-decoration:underline;}
.pub .venue{font-size:13.5px;color:var(--silver);margin:0 0 12px;}
.pub .authors{font-size:13px;color:var(--muted);margin:0 0 12px;}
.pub .authors strong{color:var(--mist);font-weight:600;}
.pub .doi{font-family:'JetBrains Mono',monospace;font-size:11.5px;color:var(--muted);letter-spacing:0.03em;overflow-wrap:anywhere;}
[dir="rtl"] .pub .doi{font-family:'JetBrains Mono',monospace;}
.pub .doi a{color:var(--blue-light);}
.pub .doi a:hover{text-decoration:underline;}

/* --------------------------------------------------------------------------
   13. FAQ LIST (نص كامل ظاهر — بدون طي)
   -------------------------------------------------------------------------- */
.faq-list{max-width:820px;}
.faq-item{border-top:1px solid var(--line);padding:22px 0;}
.faq-item:last-child{border-bottom:1px solid var(--line);}
.faq-item h3{font-size:18px;font-weight:600;margin-bottom:8px;}
.faq-item p{color:var(--silver);font-size:15px;margin:0;}

/* --------------------------------------------------------------------------
   14. TABS (فلتر الروبوتات / فلتر الجاليري)
   -------------------------------------------------------------------------- */
.tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:34px;}
.tab-btn{background:var(--panel);border:1px solid var(--line);color:var(--silver);padding:9px 17px;border-radius:3px;font-family:'JetBrains Mono',monospace;font-size:13px;letter-spacing:0.04em;cursor:pointer;transition:background .2s,border-color .2s,color .2s;}
[dir="rtl"] .tab-btn{font-family:'IBM Plex Sans Arabic';letter-spacing:0;}
.tab-btn:hover{border-color:var(--blue-light);color:var(--mist);}
.tab-btn.active{background:var(--blue);border-color:var(--blue);color:#fff;}
.tab-panel{display:none;}          /* إخفاء بصري فقط — النص يبقى كاملاً في مصدر HTML */
.tab-panel.active{display:block;}
.tab-panel .panel-head{margin-bottom:22px;}
.tab-panel .panel-head h2{font-size:clamp(22px,3vw,30px);font-weight:600;}
.tab-panel .panel-head p{color:var(--silver);font-size:15px;margin:10px 0 0;max-width:720px;}

/* --------------------------------------------------------------------------
   15. ACCORDION — الطي بصري فقط (grid 0fr→1fr) والنص يبقى في الـ DOM
   -------------------------------------------------------------------------- */
.acc{max-width:900px;}
.acc-item{border-top:1px solid var(--line);}
.acc-item:last-child{border-bottom:1px solid var(--line);}
.acc-h{margin:0;font-family:inherit;font-weight:400;font-size:inherit;line-height:inherit;}
.acc-q{width:100%;background:none;border:none;color:var(--mist);font-family:inherit;text-align:start;padding:20px 0;cursor:pointer;display:flex;gap:18px;align-items:flex-start;justify-content:space-between;}
.acc-t{font-family:'Space Grotesk',sans-serif;font-size:16.5px;font-weight:600;line-height:1.35;}
[dir="rtl"] .acc-t{font-family:'Cairo',sans-serif;}
.acc-q:hover .acc-t{color:var(--blue-light);}
.acc-sign{flex:0 0 auto;font-family:'JetBrains Mono',monospace;font-size:18px;color:var(--blue-light);line-height:1;padding-top:2px;transition:transform .25s;}
.acc-item.open .acc-sign{transform:rotate(45deg);}
.acc-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s ease;}
.acc-item.open .acc-a{grid-template-rows:1fr;}
.acc-a > .acc-inner{overflow:hidden;}
.acc-a .acc-pad{padding:0 0 26px;max-width:760px;}
.acc-a .cause-lbl{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:0.14em;color:var(--blue-light);text-transform:uppercase;display:block;margin-bottom:6px;}
[dir="rtl"] .acc-a .cause-lbl{font-family:'IBM Plex Sans Arabic';letter-spacing:0.02em;}
.acc-a .cause{color:var(--silver);font-size:14.5px;margin:0 0 18px;}
.acc-a ol{color:var(--silver);font-size:14.5px;margin:0;padding-inline-start:20px;}
.acc-a ol li{margin-bottom:7px;}
.acc-a ol li::marker{color:var(--blue-light);font-family:'JetBrains Mono',monospace;font-size:13px;}

/* --------------------------------------------------------------------------
   16. VIDEO CARDS (يوتيوب embed)
   -------------------------------------------------------------------------- */
.video-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(330px,100%),1fr));gap:22px;}
.video-card{background:var(--panel);border:1px solid var(--line);border-radius:6px;overflow:hidden;transition:transform .3s,border-color .3s;}
.video-card:hover{transform:translateY(-4px);border-color:var(--blue-light);}
.video-frame{position:relative;aspect-ratio:16/9;background:var(--panel-2);}
.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.video-card .body{padding:20px 22px 24px;}
.video-card h3{font-size:18px;font-weight:600;margin-bottom:9px;}
.video-card p{font-size:13.5px;color:var(--silver);margin:0;}
.video-card .apps{margin-top:13px;display:flex;flex-wrap:wrap;gap:6px;}
.video-card .apps span{font-size:11.5px;color:var(--muted);border:1px solid var(--line);border-radius:3px;padding:3px 9px;font-family:'JetBrains Mono',monospace;}
[dir="rtl"] .video-card .apps span{font-family:'IBM Plex Sans Arabic';}

/* --------------------------------------------------------------------------
   17. GALLERY GRID + LIGHTBOX
   -------------------------------------------------------------------------- */
.gal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:18px;}
.gal-item{position:relative;display:block;width:100%;padding:0;background:var(--panel);border:1px solid var(--line);border-radius:6px;overflow:hidden;cursor:pointer;font-family:inherit;text-align:start;transition:transform .3s,border-color .3s;}
.gal-item:hover{transform:translateY(-4px);border-color:var(--blue-light);}
.gal-item.is-hidden{display:none;}   /* الفلترة — إخفاء بصري فقط */
.gal-item .ph{display:block;aspect-ratio:4/3;overflow:hidden;position:relative;}
.gal-item .ph img{width:100%;height:100%;object-fit:cover;transition:transform .5s;}
.gal-item:hover .ph img{transform:scale(1.06);}
.gal-item .ph::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(11,27,51,0.88),rgba(11,27,51,0.12) 58%,transparent 100%);}
.gal-item .cap{display:block;position:absolute;bottom:0;inset-inline:0;padding:16px 18px;z-index:2;}
.gal-item .cap .t{display:block;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:16px;color:var(--mist);line-height:1.25;}
[dir="rtl"] .gal-item .cap .t{font-family:'Cairo',sans-serif;}
.gal-item .cap .s{display:block;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:0.08em;color:var(--blue-light);text-transform:uppercase;margin-top:5px;}
[dir="rtl"] .gal-item .cap .s{font-family:'IBM Plex Sans Arabic';letter-spacing:0;}
.gal-empty{color:var(--muted);font-size:14px;padding:40px 0;display:none;}
.gal-empty.show{display:block;}

.lb{position:fixed;inset:0;z-index:100;background:rgba(7,18,34,0.95);backdrop-filter:blur(4px);display:none;align-items:center;justify-content:center;padding:64px 20px 84px;}
.lb.open{display:flex;}
.lb figure{margin:0;text-align:center;max-width:min(1100px,94vw);}
.lb img{max-width:min(1100px,94vw);max-height:72vh;width:auto;object-fit:contain;border:1px solid var(--line);border-radius:6px;margin:0 auto;}
.lb figcaption{margin-top:16px;color:var(--mist);font-family:'Space Grotesk',sans-serif;font-size:17px;font-weight:600;}
[dir="rtl"] .lb figcaption{font-family:'Cairo',sans-serif;}
.lb .lb-title{display:block;}
.lb .lb-sub{display:block;font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:0.08em;color:var(--blue-light);text-transform:uppercase;margin-top:6px;font-weight:400;}
[dir="rtl"] .lb .lb-sub{font-family:'IBM Plex Sans Arabic';letter-spacing:0;}
.lb-btn{position:absolute;background:rgba(15,38,71,0.9);border:1px solid var(--line);color:var(--mist);width:46px;height:46px;border-radius:50%;font-size:20px;line-height:1;cursor:pointer;font-family:inherit;transition:border-color .2s,background .2s;}
.lb-btn:hover{border-color:var(--blue-light);background:var(--blue);}
.lb-close{top:18px;inset-inline-end:20px;}
.lb-prev{top:50%;inset-inline-start:20px;transform:translateY(-50%);}
.lb-next{top:50%;inset-inline-end:20px;transform:translateY(-50%);}
@media(max-width:600px){
  .lb{padding:56px 12px 92px;}
  .lb-prev{inset-inline-start:12px;}
  .lb-next{inset-inline-end:12px;}
}

/* --------------------------------------------------------------------------
   18. FORMS / CONTACT
   -------------------------------------------------------------------------- */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;}
.contact-grid > *{min-width:0;}   /* يسمح للعمود بالانكماش على الهواتف */
.contact-card{background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:34px;}
.field{margin-bottom:18px;}
.field label{display:block;font-size:12px;color:var(--muted);font-family:'JetBrains Mono',monospace;letter-spacing:0.06em;margin-bottom:7px;}
[dir="rtl"] .field label{font-family:'IBM Plex Sans Arabic';}
.field input,.field textarea,.field select{width:100%;background:var(--ink);border:1px solid var(--line);border-radius:3px;color:var(--mist);padding:12px 14px;font-family:inherit;font-size:14px;}
.field select{appearance:none;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,var(--silver) 50%),linear-gradient(135deg,var(--silver) 50%,transparent 50%);background-position:calc(100% - 19px) 20px,calc(100% - 13px) 20px;background-size:6px 6px,6px 6px;background-repeat:no-repeat;}
[dir="rtl"] .field select{background-position:19px 20px,13px 20px;}
.field select option{background:var(--ink);color:var(--mist);}
.field input::placeholder,.field textarea::placeholder{color:#5B6472;}
.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--blue-light);}
.contact-info .row{display:flex;gap:14px;align-items:flex-start;padding:16px 0;border-bottom:1px solid var(--line);}
.contact-info .row:last-child{border-bottom:none;}
.contact-info .k{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--muted);letter-spacing:0.06em;width:90px;flex:0 0 auto;padding-top:2px;}
[dir="rtl"] .contact-info .k{font-family:'IBM Plex Sans Arabic';}
.contact-info .v{font-size:15px;color:var(--mist);min-width:0;overflow-wrap:anywhere;}
.ph-note{background:rgba(0,90,180,0.12);border:1px dashed var(--blue-light);color:var(--silver);font-size:11.5px;padding:4px 10px;border-radius:3px;font-family:'JetBrains Mono',monospace;display:inline-block;}
[dir="rtl"] .ph-note{font-family:'IBM Plex Sans Arabic';}
.form-note{font-size:11.5px;color:var(--muted);margin-top:12px;font-family:'JetBrains Mono',monospace;letter-spacing:0.05em;}
[dir="rtl"] .form-note{font-family:'IBM Plex Sans Arabic';letter-spacing:0;}
.form-hint{font-size:13px;color:var(--silver);margin:0 0 20px;}
/* حقل مصيدة السبام — مخفي عن البشر ومرئي للبوتات فقط */
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.form-status{font-size:13.5px;margin:14px 0 0;min-height:1em;}
.form-status.is-ok{color:var(--blue-light);}
.form-status.is-err{color:#E88;}
.contact-card .btn:disabled{opacity:.6;cursor:progress;}
@media(max-width:760px){.contact-grid{grid-template-columns:1fr;gap:24px;}}
@media(max-width:600px){
  .contact-card{padding:24px 20px;}
  .contact-info .row{flex-direction:column;gap:5px;}
  .contact-info .k{width:auto;padding-top:0;}
}

/* --------------------------------------------------------------------------
   19. FOOTER — متطابق في كل الصفحات
   -------------------------------------------------------------------------- */
footer.site{padding:44px 0;background:var(--panel);}
footer.site .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;}
footer.site .brand img{height:34px;}
footer.site .f-name{font-family:'Space Grotesk',sans-serif;font-weight:700;}
[dir="rtl"] footer.site .f-name{font-family:'Cairo',sans-serif;}
footer.site .f-tag{font-size:12px;color:var(--muted);}
footer.site .fnote{font-size:12px;color:var(--muted);font-family:'JetBrains Mono',monospace;}
[dir="rtl"] footer.site .fnote{font-family:'IBM Plex Sans Arabic';}
.flinks{display:flex;gap:18px;flex-wrap:wrap;font-size:13px;color:var(--silver);}
.flinks a:hover{color:var(--blue-light);}

/* --------------------------------------------------------------------------
   19b. FLOATING WHATSAPP BUTTON
   -------------------------------------------------------------------------- */
.wa-float{position:fixed;inset-inline-end:20px;bottom:20px;z-index:60;display:flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:50%;background:#25D366;color:#fff;box-shadow:0 6px 18px rgba(0,0,0,.38);transition:transform .2s,box-shadow .2s;}
.wa-float:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(0,0,0,.5);}
.wa-float svg{width:28px;height:28px;display:block;}
@media(max-width:600px){
  .wa-float{width:48px;height:48px;inset-inline-end:14px;bottom:14px;}
  .wa-float svg{width:25px;height:25px;}
}
@media print{.wa-float{display:none;}}

/* --------------------------------------------------------------------------
   20. BILINGUAL SWITCH — EN/AR
   toggleLang() في main.js يضبط dir على <html> و <body> معًا
   -------------------------------------------------------------------------- */
[data-ar]{display:none;}
[dir="rtl"] [data-en]{display:none;}
[dir="rtl"] [data-ar]{display:inline;}

/* --------------------------------------------------------------------------
   21. MOTION PREFERENCES
   -------------------------------------------------------------------------- */
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;}
}
