@font-face {
  font-family: "FSAlbertArabic-Regular";
  src: local("FSAlbertArabic-Regular"), url("./FSAlbertArabic-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
:root { --ink: #29504d; --paper: #faf9f6; }
body { margin:0; background:var(--paper); color:#293c38; font-family:"FSAlbertArabic-Regular",sans-serif; font-weight:400; }
button,input,select,textarea { font-family:inherit; }
#site-header { background:#fff; box-shadow:0 6px 12px #00000018; min-height:110px; display:flex; align-items:center; justify-content:center; padding:16px 24px; }
.brand { display:flex; align-items:center; justify-content:center; gap:20px; max-width:100%; }
.brand-logo { display:block; width:84px; height:84px; flex:0 0 auto; background:url("./logo.png") center/contain no-repeat; }
.brand-title { font-size:clamp(20px,3vw,28px); }
main { padding-block:45px; }
.sheet { max-width:680px; margin-inline:auto; padding:12px 24px 40px; border:0; border-radius:0; box-shadow:none; background:transparent; }
.eyebrow { color:#637973; font-size:14px; margin-bottom:8px; }
h1,h2,label { font-weight:400; }
h1 { font-size:30px; }
h2 { font-size:24px; margin-bottom:24px; }
ol { display:grid; grid-template-columns:repeat(4,1fr); gap:6px; list-style:none; padding:0; margin:30px 0; }
li { border-bottom:2px solid #e0e4e2; padding-bottom:12px; color:#6a7772; font-size:14px; }
li.done,li[aria-current] { border-color:var(--ink); color:var(--ink); }
label { display:block; margin:24px 0 8px; }
label:has(+ input[required])::after,label:has(+ select[required])::after,label:has(+ textarea[required])::after,#centersLabel::after { content:" *"; color:#df4343; }
.form-control,.form-select { min-height:44px; border:1px solid #cad1db; border-radius:4px; background-color:#fff; font-weight:400; }
.form-control:focus,.form-select:focus,summary:focus-visible { border-color:#c4ab94; box-shadow:0 0 0 3px #e8d6c8; outline:none; }
.code { direction:ltr; text-align:left; font-family:Arial,sans-serif; }
.action,.action:hover,.action:focus { background:var(--ink); color:#fff; border-radius:4px; padding:12px; margin-top:28px; }
small { display:block; color:#64716b; margin-top:8px; }
details { background:#fff; border:1px solid #cad1db; border-radius:4px; padding:0 12px; }
summary { cursor:pointer; padding:10px 0; min-height:44px; }
#choices { max-height:240px; overflow:auto; }
#choices label { padding:9px 0; margin:0; }
#choices input { accent-color:var(--ink); width:17px; height:17px; vertical-align:middle; margin-inline-end:7px; }
#alert { background:#fff0e9; color:#813c23; padding:12px; border-radius:4px; }
.success { text-align:center; padding-top:55px; }
.success-icon { color:var(--ink); font-size:54px; margin-bottom:20px; }
.success p { font-size:21px; color:#63736b; }
@media(max-width:576px) { #site-header { min-height:88px; padding:12px; } .brand { gap:12px; } .brand-logo { width:60px; height:60px; } main { padding-block:26px; } .sheet { padding-inline:12px; } li { font-size:12px; } }
