/* ============================================================
   AI City Labs — shared design system (from AI-City-Labs-Website.dc.html)
   Blue + white; bilingual EN (LTR) / AR (RTL); IBM Plex superfamily.
   ============================================================ */

:root{
  /* Ink & text */
  --ink:#0B1B33;          /* primary text */
  --body:#42526B;         /* secondary text */
  --muted:#66758F;        /* tertiary */
  --faint:#97A3B8;        /* faint / mono labels */
  --subtle:#5B6B85;       /* logo sub, footer body */
  /* Blues */
  --primary:#1D5BE8;      /* Primary 600 */
  --primary-700:#1548C4;  /* hover */
  --deep:#1A4FD0;         /* chip text */
  --brand-dark:#123B8F;   /* gradient start */
  --navy:#071431;         /* hero / dark bands */
  --blue-100:#EDF3FE;     /* chip bg */
  --blue-200:#D5E2FB;     /* chip border */
  --blue-300:#B7CDF7;
  --blue-glow:#8FB4FF;
  --on-dark-body:#DCE7FF;
  --on-dark-muted:#8FA6D9;
  --cd-sep:#3D5490;
  /* Surfaces & hairlines */
  --surface:#FFFFFF;
  --surface-alt:#F5F8FC;
  --surface-faint:#F9FBFE;
  --hairline:#E4EAF3;
  --hairline-soft:#E8EEF6;
  --hairline-faint:#EDF2F9;
  --hairline-alt:#EBF0F7;
  --input-border:#D8E1EF;
  --seg-bg:#EEF3FA;
  --seg-border:#E0E8F3;
  /* Status */
  --success:#0F8A43;      /* WhatsApp / success */
  --success-hover:#0B7136;
  --success-bright:#12A468;
  --success-tint:#E9F9EF;
  --success-border:#BDE8CD;
  --success-text:#0E7A3D;
  --amber:#FFC96B;        /* countdown / deadline */
  --amber-text:#B4610E;
  --amber-tint:#FDF1DF;
  --amber-border:#F3DCB8;
  --gold:#E8B93E;
  --danger-text:#9A4242;
  --danger-tint:#FBEDED;
  --danger-border:#F0CFCF;
  /* Type */
  --font-sans:'IBM Plex Sans','IBM Plex Sans Arabic',sans-serif;
  --font-ar:'IBM Plex Sans Arabic','IBM Plex Sans',sans-serif;
  --font-mono:'IBM Plex Mono',monospace;
  /* Shape & elevation */
  --r-btn-sm:9px; --r-btn:13px; --r-card:16px; --r-card-lg:18px; --r-band:26px; --r-pill:999px;
  --sh-card:0 1px 2px rgba(11,27,51,.04),0 10px 30px rgba(11,27,51,.05);
  --sh-hover:0 2px 4px rgba(11,27,51,.06),0 18px 44px rgba(29,91,232,.13);
  --sh-mock:0 26px 70px rgba(11,27,51,.18),0 4px 14px rgba(11,27,51,.08);
  --sh-cta:0 1px 2px rgba(11,27,51,.15),0 5px 14px rgba(29,91,232,.25);
}

/* ---------- Base ---------- */
html,body{margin:0;padding:0;background:#FFFFFF;}
body{
  font-family:var(--font-sans);
  color:var(--ink);
  min-height:100vh;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
::selection{background:var(--primary);color:#FFFFFF;}
@keyframes acPulse{
  0%,100%{opacity:1;}
  50%{opacity:.35;}
}
:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(29,91,232,.35);border-radius:6px;}
a{color:inherit;}
img,svg{display:block;}

/* ---------- Bilingual show/hide + RTL ---------- */
html[data-lang="en"] .i-ar{display:none !important;}
html[data-lang="ar"] .i-en{display:none !important;}
html[data-lang="ar"]{direction:rtl;}
html[data-lang="ar"] body{font-family:var(--font-ar);}
/* Arabic: no letter-spacing, taller line-height */
html[data-lang="ar"] .ac-eyebrow{letter-spacing:0;text-transform:none;font-size:13.5px;}
html[data-lang="ar"] h1,html[data-lang="ar"] h2,html[data-lang="ar"] h3{letter-spacing:0;}

/* ---------- Section shell ---------- */
.ac-section{max-width:1180px;margin:0 auto;padding:0 28px;}
.ac-eyebrow{font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--primary);}

/* ---------- Header ---------- */
.ac-header{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--hairline-soft);}
.ac-header-inner{max-width:1180px;margin:0 auto;padding:0 28px;min-height:66px;display:flex;align-items:center;gap:20px;flex-wrap:wrap;}
.ac-logo{display:flex;align-items:center;gap:10px;cursor:pointer;text-decoration:none;color:var(--ink);padding:12px 0;}
.ac-logo-tile{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,#123B8F,#1D5BE8);display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px rgba(18,59,143,.35);}
.ac-logo-name{font-size:16.5px;font-weight:700;letter-spacing:-0.01em;}
.ac-logo-sub{font-size:10.5px;font-weight:600;color:var(--subtle);}
.ac-logo-sub .i-en{letter-spacing:.06em;text-transform:uppercase;}
.ac-nav{display:flex;align-items:center;gap:2px;flex:1;justify-content:center;flex-wrap:wrap;min-width:200px;}
.ac-nav-btn{background:none;border:none;cursor:pointer;font-family:inherit;font-size:14.5px;font-weight:500;color:var(--body);padding:9px 13px;border-radius:9px;transition:background .15s,color .15s;text-decoration:none;display:inline-block;}
.ac-nav-btn:hover{background:#F2F6FC;color:var(--ink);}
.ac-nav-btn.on{color:var(--ink);font-weight:600;}
.ac-header-cta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}

/* ---------- Buttons ---------- */
.ac-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--primary);color:#FFFFFF;border:none;border-radius:11px;padding:9px 17px;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;text-decoration:none;box-shadow:var(--sh-cta);transition:background .15s;}
.ac-btn:hover{background:var(--primary-700);}
.ac-btn-lg{border-radius:13px;padding:13px 24px;font-size:15px;box-shadow:0 8px 22px rgba(29,91,232,.3);}
.ac-btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#FFFFFF;color:var(--ink);border:1px solid var(--input-border);border-radius:11px;padding:9px 17px;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;text-decoration:none;transition:border-color .15s,color .15s;}
.ac-btn-ghost:hover{border-color:var(--primary);color:var(--primary);}
.ac-btn-ghost.ac-btn-lg{padding:12px 22px;}
.ac-btn-wa{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--success);color:#FFFFFF;border:none;border-radius:11px;padding:9px 15px;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;text-decoration:none;transition:background .15s;}
.ac-btn-wa:hover{background:var(--success-hover);}
.ac-btn-wa.ac-btn-lg{border-radius:13px;padding:12px 22px;font-size:15px;}
.ac-btn-dark-ghost{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:rgba(7,20,49,.92);color:#FFFFFF;border:1px solid rgba(158,186,255,.35);border-radius:13px;padding:12px 22px;font-size:15px;font-weight:600;cursor:pointer;text-decoration:none;transition:border-color .15s;}
.ac-btn-dark-ghost:hover{border-color:rgba(158,186,255,.7);}
.ac-link{background:none;border:none;padding:0;cursor:pointer;font-family:inherit;font-size:14px;font-weight:700;color:var(--primary);text-decoration:none;}
.ac-link:hover{color:var(--primary-700);}
.ac-lang-btn{background:#FFFFFF;border:1px solid var(--input-border);border-radius:999px;padding:7px 15px;font-family:inherit;font-size:14px;font-weight:700;color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;gap:7px;transition:border-color .15s,color .15s;}
.ac-lang-btn:hover{border-color:var(--primary);color:var(--primary);}

/* ---------- Cards ---------- */
.ac-card{background:#FFFFFF;border:1px solid var(--hairline);border-radius:18px;box-shadow:var(--sh-card);transition:box-shadow .18s,transform .18s,border-color .18s;}
.ac-card:hover{box-shadow:var(--sh-hover);transform:translateY(-3px);border-color:var(--blue-200);}
.ac-card-static{background:#FFFFFF;border:1px solid var(--hairline);border-radius:18px;}

/* ---------- Badges & chips ---------- */
.ac-badge{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:700;color:var(--deep);background:var(--blue-100);border:1px solid var(--blue-200);border-radius:999px;padding:6px 13px;}
.ac-badge-ok{color:var(--success-text);background:var(--success-tint);border-color:var(--success-border);}
.ac-badge-warn{color:var(--amber-text);background:var(--amber-tint);border-color:var(--amber-border);}
.ac-badge-danger{color:var(--danger-text);background:var(--danger-tint);border-color:var(--danger-border);}
.ac-badge-plain{color:var(--body);background:#FFFFFF;border-color:var(--hairline);font-size:12px;gap:8px;}

/* ---------- Segmented control (pricing toggle) ---------- */
.ac-seg{display:inline-flex;background:var(--seg-bg);border:1px solid var(--seg-border);border-radius:999px;padding:4px;gap:4px;}
.ac-seg-btn{display:inline-flex;align-items:center;gap:8px;background:transparent;color:var(--subtle);border:none;border-radius:999px;padding:9px 20px;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s,color .15s;box-shadow:none;}
.ac-seg-btn.on{background:#FFFFFF;color:var(--ink);box-shadow:0 1px 3px rgba(11,27,51,.14);}

/* ---------- Countdown ---------- */
.countdown{display:inline-flex;align-items:baseline;gap:14px;background:var(--navy);border-radius:18px;padding:22px 34px;font-family:var(--font-mono);box-shadow:0 18px 44px rgba(7,20,49,.3);}
.countdown .cd-unit{text-align:center;}
.countdown .cd-num{display:block;font-size:38px;font-weight:600;color:#FFFFFF;font-variant-numeric:tabular-nums;}
.countdown .cd-num.amber{color:var(--amber);}
.countdown .cd-lbl{display:block;font-size:10px;font-weight:600;color:var(--on-dark-muted);letter-spacing:.08em;margin-top:2px;}
.countdown .cd-lbl .i-ar{font-family:var(--font-ar);letter-spacing:0;}
.countdown .cd-sep{color:var(--cd-sep);font-size:26px;}
/* banner variant (dark strip under hero) */
.countdown--banner{background:transparent;border-radius:0;padding:0;box-shadow:none;gap:10px;margin-inline-start:auto;}
.countdown--banner .cd-num{font-size:20px;}
.countdown--banner .cd-lbl{font-size:9.5px;margin-top:1px;}
.countdown--banner .cd-sep{font-size:16px;}

/* ---------- Readiness checker (compliance page) ---------- */
.ck-row{display:flex;align-items:center;gap:13px;width:100%;background:var(--surface-faint);border:1px solid var(--hairline);border-radius:13px;padding:15px 17px;cursor:pointer;font-family:inherit;text-align:start;transition:background .15s,border-color .15s;}
.ck-row:hover{border-color:var(--blue-300);}
.ck-row.on{background:var(--success-tint);border-color:var(--success-border);}
.ck-box-off{display:block;width:23px;height:23px;border-radius:8px;border:2px solid #C6D2E4;flex:none;box-sizing:border-box;}
.ck-box-on{display:none;width:23px;height:23px;border-radius:8px;background:var(--success-bright);flex:none;align-items:center;justify-content:center;}
.ck-row.on .ck-box-off{display:none;}
.ck-row.on .ck-box-on{display:flex;}
.ck-row .ck-txt{font-size:14.5px;font-weight:600;color:var(--ink);line-height:1.5;}
.ck-bar{flex:1;height:9px;border-radius:999px;background:var(--seg-bg);overflow:hidden;display:block;}
.ck-bar-fill{display:block;height:100%;width:0%;background:var(--amber);border-radius:999px;transition:width .3s ease,background .3s ease;}
.ck-score{font-family:var(--font-mono);font-size:14px;font-weight:600;color:var(--ink);}
.ck-verdict{margin:14px 0 0;font-size:15px;font-weight:700;color:var(--ink);line-height:1.55;}

/* ---------- Forms ---------- */
.ac-input{font-family:inherit;font-size:14.5px;color:var(--ink);background:#FFFFFF;border:1px solid var(--input-border);border-radius:11px;padding:12px 14px;outline:none;transition:border-color .15s,box-shadow .15s;}
.ac-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(29,91,232,.14);}
.ac-input-mono{font-family:var(--font-mono);font-size:14px;}

/* ---------- Mono figures ---------- */
.ac-mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;}

/* ---------- Footer ---------- */
.ac-footer{background:var(--surface-alt);border-top:1px solid var(--hairline);}
.ac-footer-inner{max-width:1180px;margin:0 auto;padding:64px 28px 28px;}
.ac-footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:36px;}
.ac-foot-h{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--faint);margin:0 0 14px;}
html[data-lang="ar"] .ac-foot-h{letter-spacing:0;text-transform:none;font-size:13px;}
.ac-foot-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.ac-foot-link{font-size:13.5px;font-weight:600;color:var(--body);text-decoration:none;transition:color .15s;}
.ac-foot-link:hover{color:var(--primary);}
.ac-foot-bottom{margin-top:44px;padding-top:22px;border-top:1px solid var(--hairline);display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:space-between;font-size:12.5px;font-weight:600;color:var(--muted);}
.ac-flag-pill{display:inline-flex;align-items:center;gap:8px;margin-top:16px;background:#FFFFFF;border:1px solid var(--hairline);border-radius:999px;padding:7px 13px;font-size:12px;font-weight:700;color:var(--body);}

/* ---------- Responsive ---------- */
@media (max-width:760px){
  .ac-header-inner{padding:8px 18px;gap:8px;}
  .ac-nav{order:3;width:100%;justify-content:flex-start;min-width:0;}
  .ac-section{padding:0 18px;}
  .ac-footer-inner{padding:48px 18px 22px;}
  .countdown{gap:10px;padding:18px 22px;}
  .countdown .cd-num{font-size:26px;}
  .countdown .cd-sep{font-size:18px;}
  .ac-hero-pad{padding-top:56px !important;padding-bottom:64px !important;}
}
