/* Kasbok restored static shell: header/navigation/footer correction only. */
:root {
  --kasbok-shell-max: 1120px;
  --kasbok-shell-edge: clamp(18px, 4vw, 42px);
  --kasbok-shell-text: #f8fafc;
  --kasbok-shell-muted: #cbd5e1;
  --kasbok-shell-line: rgba(148, 163, 184, .24);
  --kasbok-shell-panel: rgba(3, 15, 31, .94);
  --kasbok-shell-footer: rgba(2, 12, 27, .98);
  --kasbok-shell-accent: #fbbf24;
}

html { direction: rtl; }
body {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  margin: 0;
}
main { flex: 1 0 auto; width: 100%; }

/* Header shell */
body > header,
.site-header,
.main-header {
  width: 100%;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border-bottom: 1px solid var(--kasbok-shell-line);
  background: var(--kasbok-shell-panel);
  position: relative;
  z-index: 50;
}

body > header > div,
body > header > section,
.site-header > div,
.main-header > div {
  width: min(var(--kasbok-shell-max), calc(100% - (2 * var(--kasbok-shell-edge))));
  min-height: 72px;
  margin-inline: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 14px 28px;
  box-sizing: border-box;
}

/* Navigation may be inside header or a direct body child. */
header nav,
body > nav,
.site-header nav,
.main-header nav {
  width: auto;
  min-height: 64px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 10px 22px;
  margin: 0;
  padding: 12px 0;
  box-sizing: border-box;
  font-size: 1rem;
}

body > nav {
  width: min(var(--kasbok-shell-max), calc(100% - (2 * var(--kasbok-shell-edge))));
  margin-inline: auto;
}

header nav ul,
body > nav ul,
.site-header nav ul,
.main-header nav ul,
header .nav-links,
.site-header .nav-links,
.main-header .nav-links {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 10px 22px;
  list-style: none;
  margin: 0;
  padding: 0;
}

header a,
body > nav a,
.site-header a,
.main-header a {
  color: var(--kasbok-shell-text) !important;
  text-decoration: none !important;
  font-size: .98rem;
  font-weight: 650;
  line-height: 1.6;
  opacity: .98;
  white-space: nowrap;
}

header a:hover,
header a:focus-visible,
body > nav a:hover,
body > nav a:focus-visible,
.site-header a:hover,
.site-header a:focus-visible,
.main-header a:hover,
.main-header a:focus-visible {
  color: var(--kasbok-shell-accent) !important;
  opacity: 1;
}

header img,
.site-header img,
.main-header img {
  display: block;
  max-height: 44px;
  width: auto;
}

/* Footer shell */
body > footer,
.site-footer,
.main-footer {
  width: 100%;
  box-sizing: border-box;
  margin: 64px 0 0;
  padding: 28px var(--kasbok-shell-edge) 32px;
  border-top: 1px solid var(--kasbok-shell-line);
  background: var(--kasbok-shell-footer);
  color: var(--kasbok-shell-muted);
  flex: 0 0 auto;
  clear: both;
  text-align: center;
}

body > footer > *,
.site-footer > *,
.main-footer > * {
  width: min(var(--kasbok-shell-max), 100%);
  margin-inline: auto;
}

footer p,
footer small {
  margin: 6px auto;
  color: var(--kasbok-shell-muted) !important;
  line-height: 1.8;
  text-align: center !important;
}

footer nav,
footer ul,
footer .footer-links {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px 20px;
  list-style: none;
  margin: 0 auto 14px;
  padding: 0;
}

footer a {
  color: var(--kasbok-shell-text) !important;
  text-decoration: none !important;
}
footer a:hover,
footer a:focus-visible { color: var(--kasbok-shell-accent) !important; }

@media (max-width: 760px) {
  body > header > div,
  body > header > section,
  .site-header > div,
  .main-header > div,
  header nav,
  body > nav,
  .site-header nav,
  .main-header nav {
    min-height: auto;
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
    padding-block: 12px;
  }
  header nav ul,
  body > nav ul,
  .site-header nav ul,
  .main-header nav ul,
  header .nav-links,
  .site-header .nav-links,
  .main-header .nav-links {
    width: 100%;
    gap: 8px 16px;
  }
  body > footer,
  .site-footer,
  .main-footer { margin-top: 44px; }
}
