
:root{
  --navy:#0a3264; --navy2:#0f4f90; --blue:#1264b3; --green:#18804f;
  --gold:#b67b16; --red:#c94747; --ink:#1f2b37; --muted:#66798c;
  --line:#d8e3ee; --bg:#f5f7fa; --panel:#ffffff;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;direction:rtl;background:var(--bg);font-family:"Segoe UI",Tahoma,Arial,sans-serif;color:var(--ink)}
a{text-decoration:none;color:inherit}
p,li{line-height:2}
.topbar{
  position:sticky;top:0;z-index:50;min-height:62px;padding:10px 18px;
  background:linear-gradient(90deg,#082a55,#0f4d88);color:#fff;
  display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;
  box-shadow:0 3px 15px rgba(0,0,0,.12)
}
.menu{width:54px;height:40px;border:1px solid #ffffff66;border-radius:8px;display:grid;place-items:center;font-size:25px;background:#ffffff08}
.brand{justify-self:center;font-size:21px;font-weight:800}.brand b{color:#ffcc28}
.actions{display:flex;gap:10px;flex-wrap:wrap}.actions a,.actions button{border:1px solid #ffffff55;border-radius:8px;padding:8px 14px;background:#ffffff08;color:#fff;font:inherit;cursor:pointer}
.pagewrap{max-width:1540px;margin:auto;display:grid;grid-template-columns:330px minmax(0,1fr);gap:18px;padding:18px}
.sidebar{
  background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;
  box-shadow:0 4px 15px rgba(9,44,82,.05);align-self:start;position:sticky;top:82px
}
.sidebar h2{margin:0 0 14px;color:var(--navy);font-size:24px}
.navitem{
  display:grid;grid-template-columns:44px 1fr;gap:10px;align-items:center;
  padding:10px 12px;border:1px solid #dfe7ef;border-radius:11px;margin:9px 0;background:#fff;
}
.navitem:hover{border-color:#9fc2e2;background:#f4f8fc}
.navitem.active{background:linear-gradient(90deg,#0c5bae,#0a3f80);color:#fff;border-color:#0c5bae}
.navicon{width:38px;height:38px;border-radius:9px;background:#edf5fc;color:#0b579f;display:grid;place-items:center;font-weight:800;font-size:18px}
.active .navicon{background:#ffffff1a;color:#fff}
.printlink{margin-top:18px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#fbfcfd;display:flex;gap:12px;align-items:center;color:var(--navy);font-weight:700}
.main{min-width:0}
.content{
  background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 22px 22px;
  box-shadow:0 4px 14px rgba(9,44,82,.04)
}
.lessonhead{display:grid;grid-template-columns:160px 1fr 120px;align-items:start;gap:18px}
.qrblock{text-align:center;color:var(--navy);font-size:13px}.qrblock img{width:112px;height:112px;border:2px solid #1e5e9e;border-radius:8px;padding:5px;background:#fff}
.youtube{font-weight:700;margin-top:7px}.yticon{display:inline-grid;place-items:center;width:45px;height:30px;border-radius:7px;background:#e72620;color:#fff;font-size:18px;margin-right:5px}
.titlearea{text-align:center}.titlearea h1{margin:4px 0 8px;color:var(--navy);font-size:42px;line-height:1.15}.greenline{width:120px;height:5px;border-radius:4px;background:#24a364;margin:0 auto 14px}
.computericon{font-size:62px;text-align:left}
.rule{border:0;border-top:1px solid #cbd9e6;margin:20px 0}
.topic-title{font-size:25px;font-weight:900;color:var(--green);margin:18px 0 10px;display:flex;align-items:center;gap:9px}.topic-title.blue{color:var(--navy2)}
.lead{font-size:17px;line-height:2.1;margin:6px 0}
.bulletline{display:flex;gap:10px;align-items:flex-start;margin:10px 0;font-size:17px;line-height:2.0}.dot{width:9px;height:9px;border-radius:50%;background:var(--blue);margin-top:17px;flex:none}.dot.green{background:var(--green)}
.term{font-weight:900;color:#0671cf}.term.green{color:#11814d}
.flowline{display:grid;grid-template-columns:repeat(7,max-content);justify-content:center;align-items:center;gap:14px;margin:14px 0 20px}
.arrow{font-size:29px;color:#113f73}
.stage{width:170px;min-height:145px;border:1.8px solid #bfd1e2;border-radius:12px;background:#fbfdff;padding:12px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}
.stage .emoji{font-size:44px}.stage h3{margin:0;font-size:21px}.stage small{font-size:16px}.stage.input{border-color:#7fb0e3;background:#f5f9ff;color:#0f5aad}.stage.process{border-color:#8ec0a7;background:#f4fbf7;color:#247151}.stage.store{border-color:#ddb96e;background:#fffaf0;color:#9c6913}.stage.output{border-color:#e39a9a;background:#fff6f6;color:#ad3d3d}
.detailgrid{display:grid;grid-template-columns:1fr 1.35fr 1fr 1fr;gap:14px}
.detail{border:1px solid var(--line);border-radius:12px;padding:14px;background:#fff}
.detail.input{border-color:#91b8dd;background:#fbfdff}.detail.process{border-color:#91c1ab;background:#f9fcfa}.detail.store{border-color:#d9bb78;background:#fffdf7}.detail.output{border-color:#dfa3a3;background:#fffafa}
.detail h3{text-align:center;margin:0 0 8px;font-size:19px}.detail p{margin:5px 0;line-height:1.9}
.opcols{display:grid;grid-template-columns:1fr 1fr;gap:12px}.opcols h4{text-align:center;color:var(--green);margin:0 0 7px}.oprow{display:flex;justify-content:space-between;border-bottom:1px dashed #dfe5eb;padding:5px 0}
.cards2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.card{border:1px solid var(--line);border-radius:14px;padding:18px;background:#fff}.card h3{margin:0 0 10px;color:var(--navy)}
.points{margin:0;padding-right:22px}.points li{margin:8px 0}
.comparehead{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.comparehead div{padding:13px;border-radius:11px;text-align:center;font-weight:900;font-size:20px}.comp{background:#edf5fc;color:#0e5da7}.human{background:#eef8f2;color:#267352}
.factbox{border-right:5px solid var(--blue);background:#f4f8fc;padding:14px 16px;border-radius:11px;margin:16px 0}.factbox.green{border-color:var(--green);background:#f2faf6}.factbox.gold{border-color:var(--gold);background:#fff9ec}
.binary{background:#112536;color:#95f08b;font:900 32px Consolas,monospace;letter-spacing:8px;text-align:center;border-radius:13px;padding:22px;margin:18px 0;direction:ltr}
.bits{display:grid;grid-template-columns:repeat(8,1fr);gap:8px;direction:ltr}.bits span{border:2px solid #9fbddd;border-radius:9px;text-align:center;padding:11px 0;font:900 22px Consolas;color:var(--navy)}
.units{display:grid;gap:9px}.unit{display:grid;grid-template-columns:130px 1fr 1fr;gap:12px;padding:10px;border:1px solid var(--line);border-radius:10px}.unit b{color:var(--navy)}
table.data{width:100%;border-collapse:collapse;margin:12px 0}table.data th,table.data td{border:1px solid #d7e1ea;padding:10px;text-align:center}table.data th{background:#edf4fa;color:var(--navy)}
.softwaregrid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.soft{border:1px solid var(--line);border-radius:14px;padding:16px;background:#fff}.soft h3{margin:0 0 8px;color:var(--navy)}
.langgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.lang{border:1px solid var(--line);border-radius:14px;padding:16px;background:#fff}.lang h3{margin:0 0 8px;color:var(--navy)}
.codebox{direction:ltr;background:#0f2235;color:#a5ef98;padding:16px;border-radius:12px;font:700 18px Consolas,monospace;text-align:left}
.footerbar{margin-top:22px;background:linear-gradient(90deg,#073766,#0e558f);border-radius:12px;padding:10px 12px;color:#fff;display:flex;align-items:center;justify-content:space-between}.footerbar a{border:1px solid #ffffff50;padding:7px 13px;border-radius:8px}
@media(max-width:1050px){
 .pagewrap{grid-template-columns:1fr}.sidebar{position:static}.lessonhead{grid-template-columns:1fr}.qrblock,.computericon{text-align:center}
 .flowline{grid-template-columns:1fr}.arrow{transform:rotate(-90deg);text-align:center}.stage{width:100%}
 .detailgrid,.cards2,.cards3,.softwaregrid,.langgrid{grid-template-columns:1fr}.opcols{grid-template-columns:1fr}.topbar{grid-template-columns:auto 1fr}.brand{justify-self:end}.actions{grid-column:1/-1;justify-self:center}
}
@media print{
 .topbar,.sidebar,.footerbar{display:none!important}.pagewrap{display:block;padding:0}.content{border:0;box-shadow:none}.qrblock{display:none}
 body{background:#fff}.content{page-break-after:always}.main{width:100%}
}


.examples-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin:18px 0 24px;
  align-items:stretch;
}
.example-card{
  border:1px solid var(--line);
  border-radius:15px;
  padding:20px;
  background:#fff;
  min-width:0;
  box-shadow:0 3px 12px rgba(9,44,82,.04);
}
.example-card h3{
  margin:0 0 10px;
  color:var(--navy2);
  font-size:23px;
  line-height:1.5;
}
.example-card p{
  margin:0;
  font-size:17px;
  line-height:2;
}
.example-icon{
  width:54px;
  height:54px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:#edf5fc;
  font-size:29px;
  margin-bottom:12px;
}
.footerbar{
  clear:both;
  width:100%;
}
@media(max-width:850px){
  .examples-grid{grid-template-columns:1fr}
}

.course-back{
  color:#fff;
  border:1px solid #ffffff55;
  background:#ffffff10;
  border-radius:9px;
  padding:8px 12px;
  text-decoration:none;
  font-weight:700;
}

.computer-components-tree{max-width:920px;margin:14px auto 26px}.computer-components-tree img{width:100%;height:auto;display:block;border-radius:14px}

/* S² GATE global identity */
body{min-height:100vh;display:flex;flex-direction:column}
.pagewrap{width:100%;flex:1}
.portal-home-link{display:inline-flex!important;align-items:center;gap:3px}
.site-footer{width:100%;margin-top:auto;background:transparent;color:#66788a;padding:18px;text-align:center;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;font-size:13px;border-top:1px solid #dfe7ee;box-shadow:none}
.site-footer-sep{opacity:.5}
@media print{.site-footer{display:none!important}}

/* v48 — fixed S² GATE identity and stable top navigation */
.topbar{position:sticky;top:0;z-index:80;display:block!important;min-height:64px;padding:9px 16px;background:linear-gradient(90deg,#082a55,#0f4d88);box-shadow:0 3px 15px rgba(0,0,0,.12)}
.topbar-inner{width:min(1460px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(250px,340px) minmax(300px,1fr) minmax(250px,340px);align-items:center;gap:18px;direction:rtl}
.sitezone{display:flex;align-items:center;gap:9px;justify-self:start;min-width:0}
.portal-home-fixed,.course-back-fixed,.lesson-actions a,.lesson-actions button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #ffffff55;border-radius:9px;padding:7px 12px;background:#ffffff0b;color:#fff;font:inherit;font-weight:700;white-space:nowrap}
.portal-home-fixed{padding:7px 12px;background:#ffffff0b;color:#fff;border-color:#ffffff55;font-weight:700}
.portal-home-fixed img{width:36px;height:31px;object-fit:contain;display:block}
.course-back-fixed{background:#ffffff0a}
.brand-fixed{justify-self:center!important;text-align:center;font-size:19px!important;line-height:1.45;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.lesson-actions{justify-self:end;display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:nowrap;min-width:0}
.lesson-actions:empty{min-height:38px}
.lesson-actions a{min-width:74px}
@media(max-width:1100px){
 .topbar-inner{grid-template-columns:1fr;gap:8px}
 .sitezone,.lesson-actions{justify-self:center;justify-content:center;flex-wrap:wrap}
 .brand-fixed{grid-row:1;font-size:17px!important;white-space:normal}
 .sitezone{grid-row:2}.lesson-actions{grid-row:3}
}
@media(max-width:620px){.portal-home-fixed span{display:none}.portal-home-fixed{padding:4px 7px}.portal-home-fixed img{width:32px;height:28px}.course-back-fixed,.lesson-actions a{padding:6px 9px;font-size:13px}.topbar{padding:8px}.brand-fixed{font-size:15px!important}}
@media print{.topbar{display:none!important}}






/* v55 — compact S² GATE identity beside unit title; no separate identity strip */
.pagewrap{max-width:1480px!important;width:100%;margin-left:auto!important;margin-right:auto!important}
.topbar-inner{width:min(1480px,100%)!important}
.brand-fixed{display:flex!important;align-items:center;justify-content:center;gap:10px}
.unit-title-logo{width:38px;height:34px;object-fit:contain;display:block;flex:0 0 auto}
.site-footer{max-width:1480px!important;width:calc(100% - 44px)!important;margin-left:auto!important;margin-right:auto!important}
@media(max-width:760px){.unit-title-logo{width:32px;height:29px}.site-footer{width:calc(100% - 24px)!important}}
@media print{.unit-title-logo{display:none!important}}
/* v56: clearer compact site identity beside unit title */
.unit-title-logo{width:40px!important;height:36px!important;object-fit:contain!important;background:#fff!important;border:1px solid #ffffffcc!important;border-radius:9px!important;padding:3px!important;box-shadow:0 1px 5px #001b3a38!important;box-sizing:border-box!important}
@media(max-width:760px){.unit-title-logo{width:34px!important;height:31px!important;padding:2px!important}}

/* S² GATE identity mark beside unit title */
.unit-title-logo{width:40px!important;height:36px!important;object-fit:contain!important;background:#fff!important;border:1px solid #ffffffcc!important;border-radius:9px!important;padding:3px!important;box-shadow:0 1px 5px #001b3a38!important;box-sizing:border-box!important;flex:0 0 auto!important}


/* v60 — تثبيت هوية الوحدة على الجوال ومنع تضخم الشعار */
@media (max-width:760px){
  .topbar{min-height:0!important;padding:8px 10px!important}
  .topbar-inner{width:100%!important;max-width:100%!important;grid-template-columns:1fr!important;gap:7px!important;padding:0!important}
  .brand-fixed{display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;width:100%!important;max-width:100%!important;font-size:15px!important;line-height:1.55!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
  .brand-fixed img.unit-title-logo,
  img.unit-title-logo{width:34px!important;height:31px!important;min-width:34px!important;min-height:31px!important;max-width:34px!important;max-height:31px!important;object-fit:contain!important;padding:2px!important;flex:0 0 34px!important}
  .sitezone,.lesson-actions{justify-self:center!important;justify-content:center!important;max-width:100%!important}
}
