@font-face{font-family:'Manrope';font-weight:500;font-style:normal;font-display:swap;src:url(fonts/manrope-greek-500-normal.woff2) format('woff2');unicode-range:U+0370-03FF;}
@font-face{font-family:'Manrope';font-weight:700;font-style:normal;font-display:swap;src:url(fonts/manrope-greek-700-normal.woff2) format('woff2');unicode-range:U+0370-03FF;}
@font-face{font-family:'Manrope';font-weight:800;font-style:normal;font-display:swap;src:url(fonts/manrope-greek-800-normal.woff2) format('woff2');unicode-range:U+0370-03FF;}
@font-face{font-family:'Manrope';font-weight:500;font-style:normal;font-display:swap;src:url(fonts/manrope-latin-500-normal.woff2) format('woff2');}
@font-face{font-family:'Manrope';font-weight:700;font-style:normal;font-display:swap;src:url(fonts/manrope-latin-700-normal.woff2) format('woff2');}
@font-face{font-family:'Manrope';font-weight:800;font-style:normal;font-display:swap;src:url(fonts/manrope-latin-800-normal.woff2) format('woff2');}
@font-face{font-family:'JetBrains Mono';font-weight:400;font-style:normal;font-display:swap;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format('woff2');}
@font-face{font-family:'JetBrains Mono';font-weight:500;font-style:normal;font-display:swap;src:url(fonts/jetbrains-mono-latin-500-normal.woff2) format('woff2');}

:root{
  --bg:#f7f8fb; --card:#ffffff; --border:#e3e7ef;
  --text:#1b2030; --muted:#5b6478;
  --accent:#4c7dff; --accent-btn:#3a66e0; --link:#2f5bd6;
  --ok:#17794f; --ok-bg:#e8f6ef;
  --bad:#c2362b; --bad-bg:#fdecea;
  color-scheme:light;
}
@media (prefers-color-scheme: dark){
  :root{
    --bg:#0f1219; --card:#161a24; --border:#262c3b;
    --text:#e8eaf0; --muted:#8e97a9;
    --accent:#7c9fff; --accent-btn:#3a66e0; --link:#8fadff;
    --ok:#4cc38a; --ok-bg:#12261d;
    --bad:#ff7a6e; --bad-bg:#2b1717;
    color-scheme:dark;
  }
}

*{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; }
body{
  margin:0; background:var(--bg); color:var(--text);
  font-family:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI','Noto Sans Arabic','Noto Sans SC','PingFang SC','Microsoft YaHei','Microsoft JhengHei',Tahoma,Helvetica,Arial,sans-serif;
  font-weight:500; font-size:16px; line-height:1.65;
  padding-inline:16px;
}
a{ color:var(--link); text-decoration:none; }
a:hover{ text-decoration:underline; }
:focus-visible{ outline:2px solid var(--accent); outline-offset:3px; border-radius:4px; }
img{ max-width:100%; height:auto; }
code,.mono{ font-family:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace; }

.page{ max-width:960px; margin-inline:auto; }
.page.narrow, .site-header.narrow{ max-width:680px; }

.site-header{
  max-width:960px; margin-inline:auto; padding-block:20px;
  display:flex; align-items:center; justify-content:space-between; gap:16px;
}
.brand{ display:flex; align-items:center; gap:10px; color:var(--text); font-weight:800; font-size:18px; letter-spacing:-.01em; }
.brand:hover{ text-decoration:none; }
.brand img{ border-radius:8px; display:block; }
.site-header nav{ display:flex; gap:20px; font-size:15px; font-weight:700; }
.site-header nav a{ color:var(--muted); }
.site-header nav a:hover{ color:var(--text); text-decoration:none; }

.site-footer{
  max-width:960px; margin:96px auto 0; padding-block:28px 56px;
  border-top:1px solid var(--border); font-size:14px; color:var(--muted);
  display:flex; flex-wrap:wrap; gap:8px 28px; justify-content:space-between;
}
.site-footer p{ margin:0; max-width:56ch; }
.site-footer nav{ display:flex; gap:20px; font-weight:700; }
.site-footer.narrow{ max-width:680px; }
