*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;background:#f4f6f8;color:#17202a}

header{
  background:linear-gradient(135deg,#0f172a,#1e3a8a);
  color:#fff;
  padding:42px 8%;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:24px
}

header small{
  display:inline-block;
  background:rgba(255,255,255,.14);
  padding:7px 10px;
  border-radius:999px;
  margin-bottom:12px
}

header h1{margin:0;font-size:42px;line-height:1.08}
header p{margin:12px 0 0;color:#dbeafe;max-width:760px;font-size:17px}

header > span{
  background:rgba(255,255,255,.14);
  padding:10px 14px;
  border-radius:999px;
  white-space:nowrap
}

header > div::before{display:none}

nav{
  position:sticky;
  top:0;
  z-index:30;
  background:linear-gradient(135deg,#0f172a,#1e3a8a);
  padding:14px 8%;
  display:flex;
  gap:8px;
  flex-wrap:nowrap;
  align-items:center;
  overflow:visible;
  box-shadow:0 8px 22px rgba(15,23,42,.1)
}
nav::before{
  content:"";
  display:flex;
  align-items:center;
  flex:0 0 38px;
  width:38px;
  min-height:38px;
  margin-right:auto;
  padding-left:0;
  color:#fff;
  font-weight:900;
  background:#fff url("https://mustafabarak.com.tr/images/logo.png?v=20260524") center/30px 30px no-repeat;
  border-radius:10px;
  white-space:nowrap
}

nav a{
  text-decoration:none;
  color:#0f172a;
  background:#eef2ff;
  border:1px solid #dbeafe;
  padding:8px 11px;
  border-radius:999px;
  white-space:nowrap;
  font-weight:700;
  font-size:14px;
  line-height:1.1
}

nav a:hover{background:#dbeafe;color:#0f172a}

.nav-more{position:relative}
.nav-more summary{
  list-style:none;
  text-decoration:none;
  color:#0f172a;
  background:#eef2ff;
  border:1px solid #dbeafe;
  padding:8px 11px;
  border-radius:999px;
  white-space:nowrap;
  font-weight:700;
  font-size:14px;
  line-height:1.1;
  cursor:pointer
}
.nav-more summary::-webkit-details-marker{display:none}
.nav-more summary::after{content:"";display:inline-block;margin-left:8px;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;vertical-align:middle}
.nav-more-menu{display:none;position:absolute;top:calc(100% + 24px);right:0;min-width:220px;padding:8px;border:1px solid #dbeafe;border-radius:14px;background:#fff;box-shadow:0 18px 36px rgba(15,23,42,.16);z-index:80}
.nav-more[open] .nav-more-menu{display:grid;gap:8px}
.nav-more-menu a{display:flex;justify-content:flex-start}

.menu-toggle{
  display:none;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:36px;
  padding:7px 11px;
  border:1px solid #dbeafe;
  border-radius:999px;
  background:#eef2ff;
  color:#0f172a;
  font-weight:800;
  cursor:pointer;
  white-space:nowrap;
}

.menu-toggle span:first-child{font-size:20px;line-height:1}

main{padding:30px 8%}

.section-title{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:20px;
  margin:12px 0 18px
}

.section-title h2{margin:0;font-size:30px}
.section-title p{margin:0;color:#64748b;text-align:right}

.level-tabs{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin:0 0 18px
}

.level-tabs button{
  border:1px solid #c7d2fe;
  background:#fff;
  color:#1e293b;
  padding:12px 16px;
  border-radius:999px;
  font-weight:800;
  cursor:pointer;
  box-shadow:0 8px 22px rgba(15,23,42,.05)
}

.level-tabs button.active{
  color:#fff;
  background:#1d4ed8;
  border-color:#1d4ed8
}

.level-panel{display:none}
.level-panel.active{display:block}

.level-intro{
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:flex-start;
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:18px;
  padding:24px;
  box-shadow:0 12px 30px rgba(15,23,42,.08);
  margin-bottom:18px
}

.level-intro h2{margin:10px 0 8px;font-size:28px}
.level-intro p{margin:0;color:#64748b;max-width:760px}
.level-intro strong{
  min-width:260px;
  background:#eef6ff;
  border:1px solid #bfdbfe;
  color:#334155;
  padding:14px;
  border-radius:14px
}

.badge, article span{
  display:inline-block;
  background:#e0ecff;
  color:#1d4ed8;
  border-radius:999px;
  padding:6px 10px;
  font-size:13px;
  font-weight:800
}

.activity-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(290px,1fr));
  gap:18px
}

article{
  background:#fff;
  border-radius:16px;
  padding:20px;
  box-shadow:0 12px 30px rgba(15,23,42,.07);
  border:1px solid #e5e7eb
}

article h3{font-size:21px;line-height:1.3;margin:14px 0 10px}
article p{color:#64748b}
article ul{margin:14px 0 0;padding-left:20px;color:#475569}
article li{margin:7px 0}

.example{
  border-top:1px solid #e5e7eb;
  border-bottom:1px solid #e5e7eb;
  padding:12px 0;
  margin:14px 0
}

.learning-block{
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:14px;
  padding:12px;
  margin:14px 0 0
}

.learning-block b{
  display:block;
  margin-bottom:6px;
  color:#0f172a
}

.learning-block p{margin:0}

.example b{display:block;margin-bottom:6px;color:#0f172a}
.example p{margin:0}

article small{
  display:block;
  margin-top:14px;
  color:#64748b;
  background:#eef6ff;
  border:1px solid #bfdbfe;
  border-radius:12px;
  padding:10px
}

.quick-index{margin-top:42px}

.index-table{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
  gap:12px
}

.index-table div{
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:14px;
  padding:14px;
  box-shadow:0 8px 22px rgba(15,23,42,.05)
}

.index-table b{
  display:block;
  margin-bottom:6px;
  color:#0f172a
}

.index-table span{color:#64748b}

.catalog{margin-top:42px}

.catalog-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(330px,1fr));
  gap:18px
}

.catalog-group{
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:18px;
  padding:18px;
  box-shadow:0 12px 30px rgba(15,23,42,.07)
}

.catalog-group h3{
  margin:0 0 14px;
  font-size:21px
}

.catalog-list{
  display:grid;
  gap:9px
}

.catalog-list div{
  display:grid;
  grid-template-columns:minmax(150px,.9fr) 1.1fr;
  gap:10px;
  align-items:start;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:10px
}

.catalog-list b{
  color:#0f172a;
  line-height:1.25
}

.catalog-list span{
  color:#64748b;
  line-height:1.35
}

.catalog-groups,.resource-grid,.diagram-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:18px
}

.catalog-groups article,.resource-grid a{
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:16px;
  padding:20px;
  box-shadow:0 12px 30px rgba(15,23,42,.07);
  text-decoration:none;
  color:#0f172a
}

.resource-grid a b{
  display:block;
  margin-bottom:8px
}

.resource-grid a span{
  color:#64748b;
  line-height:1.4
}

.visuals{margin-top:42px}

.visual-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:18px
}

.diagram{
  background:#fff;
  border-radius:18px;
  padding:22px;
  box-shadow:0 12px 30px rgba(15,23,42,.08);
  border:1px solid #e5e7eb;
  min-height:310px
}

.diagram h3{margin:0 0 18px;font-size:22px}
.diagram p{color:#64748b}

.diagram.professional{
  position:relative;
  grid-column:1/-1;
  overflow:hidden;
  background:
    linear-gradient(180deg,rgba(255,255,255,.95),rgba(255,255,255,.98)),
    radial-gradient(circle at top right,rgba(29,78,216,.12),transparent 38%);
  min-height:430px
}

.diagram.professional::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:linear-gradient(#eef2ff 1px,transparent 1px),linear-gradient(90deg,#eef2ff 1px,transparent 1px);
  background-size:26px 26px;
  opacity:.35;
  pointer-events:none
}

.diagram.professional > *{position:relative}

.diagram.wide{
  grid-column:1/-1
}

.flow-row{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  align-items:center;
  margin:16px 0
}

.flow-row span,.tile-map span{
  display:grid;
  place-items:center;
  min-height:62px;
  border-radius:14px;
  border:1px solid #c7d2fe;
  background:#eef2ff;
  font-weight:900;
  text-align:center;
  overflow-wrap:anywhere
}

.flow-row i{
  display:none
}

.tile-map{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin:16px 0
}

.diagram-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:18px
}

.diagram-head span{
  background:#e0ecff;
  color:#1d4ed8;
  border-radius:999px;
  padding:7px 10px;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase
}

.diagram-head h3{
  margin:0;
  max-width:420px
}

.process-map{
  display:grid;
  grid-template-columns:1fr 24px 1fr 24px 1fr 24px 1fr;
  align-items:center;
  gap:10px;
  margin:20px 0
}

.process-map i{
  height:3px;
  background:linear-gradient(90deg,#93c5fd,#1d4ed8);
  border-radius:999px
}

.process-node{
  min-height:118px;
  background:#f8fafc;
  border:1px solid #dbeafe;
  border-radius:18px;
  padding:14px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.7)
}

.process-node small{
  display:inline-grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:12px;
  background:#1d4ed8;
  color:#fff;
  font-weight:900;
  margin-bottom:10px
}

.process-node b,.process-node span{
  display:block
}

.process-node b{font-size:18px}
.process-node span{color:#64748b;margin-top:6px}
.process-node.start{border-color:#86efac}
.process-node.finish{border-color:#f8d56b;background:#fffaf0}

.metric-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:18px 0
}

.metric-row span{
  background:#0f172a;
  color:#dbeafe;
  border-radius:999px;
  padding:9px 12px;
  font-size:13px
}

.metric-row b{color:#fff;margin-right:6px}

.layer-map{
  display:grid;
  gap:12px;
  margin:20px 0
}

.layer-map div{
  display:grid;
  grid-template-columns:112px 1fr 1fr;
  gap:12px;
  align-items:center;
  background:#f8fafc;
  border:1px solid #dbeafe;
  border-left:7px solid #1d4ed8;
  border-radius:16px;
  padding:14px
}

.layer-map em{
  font-style:normal;
  color:#1d4ed8;
  font-weight:900;
  font-size:13px;
  text-transform:uppercase
}

.layer-map b{font-size:18px}
.layer-map span{color:#64748b}

.ops-board{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin:20px 0
}

.ops-column{
  background:#f8fafc;
  border:1px solid #dbeafe;
  border-radius:18px;
  padding:14px
}

.ops-column h4{
  margin:0 0 12px;
  color:#1d4ed8;
  font-size:16px
}

.ops-column span{
  display:block;
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:12px;
  padding:10px;
  margin-top:9px;
  font-weight:800
}

.flowline{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  gap:10px;
  align-items:center
}

.flowline span{
  display:grid;
  place-items:center;
  min-height:54px;
  background:#eef2ff;
  border:1px solid #c7d2fe;
  border-radius:14px;
  font-weight:800;
  text-align:center
}

.flowline i{
  width:28px;
  height:2px;
  background:#1d4ed8
}

.stack{
  display:flex;
  flex-direction:column-reverse;
  gap:9px
}

.stack span{
  background:#f8fafc;
  border:1px solid #dbeafe;
  border-left:6px solid #1d4ed8;
  border-radius:12px;
  padding:12px;
  font-weight:800
}

.architecture{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px
}

.architecture span{
  min-height:64px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:linear-gradient(180deg,#fff,#fffaf0);
  border:1px solid #f8d56b;
  font-weight:800;
  text-align:center
}

.sources{
  margin-top:42px;
  background:#fff;
  border-radius:18px;
  padding:24px;
  border:1px solid #e5e7eb
}

.source-list{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:16px
}

.source-list a{
  background:#f1f5f9;
  color:#0f172a;
  text-decoration:none;
  padding:9px 12px;
  border-radius:999px;
  border:1px solid #e2e8f0
}

footer{
  text-align:center;
  padding:26px;
  color:#64748b
}

@media(max-width:780px){
  header{
    position:sticky;
    top:0;
    z-index:40;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:10px 12px;
    padding:5px 14px;
  }
  header > div{
    display:grid;
    grid-template-columns:38px minmax(0,1fr);
    align-items:center;
    gap:10px;
    min-width:0;
  }
  header > div::before{
    content:"";
    display:block;
    grid-row:1 / 3;
    width:38px;
    height:38px;
    border-radius:8px;
    background:#fff url("https://mustafabarak.com.tr/images/logo.png?v=20260524") center/30px 30px no-repeat;
    box-shadow:0 8px 18px rgba(15,23,42,.14);
  }
  header small{padding:0;background:transparent;font-size:11px;color:#dbeafe;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  header h1{font-size:16px;line-height:1.15;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  header small,header h1{grid-column:2;min-width:0}
  header p{display:none}
  header > span{display:none}
  main{padding:24px 6%}
  .menu-toggle{display:flex;grid-column:2;grid-row:1;justify-self:end}
  nav{display:none;position:fixed;top:65px;left:14px;right:14px;z-index:39;padding:8px;gap:8px;overflow:visible}
  nav::before{display:none}
  nav.is-open{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    border:1px solid #dbeafe;
    border-radius:14px;
    background:#fff;
    box-shadow:0 18px 36px rgba(15,23,42,.16)
  }
  nav a{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    font-size:12px;
    padding:7px 9px;
    text-align:center
  }
  nav.is-open .nav-more{grid-column:1 / -1;width:100%}
  nav.is-open .nav-more summary{display:flex;align-items:center;justify-content:center;min-height:38px;font-size:12px;padding:7px 9px}
  nav.is-open .nav-more-menu{position:static;min-width:0;box-shadow:none;border:0;background:transparent;padding:8px 0 0}
  nav.is-open .nav-more[open] .nav-more-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .section-title{display:block}
  .section-title p{text-align:left;margin-top:6px}
  .level-intro{display:block}
  .level-intro strong{display:block;min-width:0;margin-top:16px}
  .flowline{grid-template-columns:1fr}
  .flowline i{width:2px;height:20px;margin:auto}
  .architecture{grid-template-columns:repeat(2,1fr)}
  .catalog-list div{grid-template-columns:1fr}
  .diagram.wide{grid-column:auto}
  .diagram-grid,.catalog-groups,.resource-grid{grid-template-columns:1fr}
  .flow-row,.tile-map{grid-template-columns:repeat(2,minmax(0,1fr))}
  .flow-row span,.tile-map span{min-height:52px;font-size:13px;padding:8px}
  .diagram-head{display:block}
  .diagram-head span{display:inline-block;margin-bottom:10px}
  .process-map{grid-template-columns:1fr}
  .process-map i{width:3px;height:22px;margin:auto}
  .layer-map div{grid-template-columns:1fr}
  .ops-board{grid-template-columns:1fr}
}
