:root{--green:#0d6249;--forest:#073f33;--ink:#172c29;--muted:#5a6e68;--surface:#f5f7f5;--border:#dde6e1;--white:#fff;--radius:8px}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--surface);font:16px/1.8 Tahoma,Arial,sans-serif}h1,h2,h3,p{margin-block:0 16px}h1{font-size:30px;line-height:1.5}h2{font-size:23px}h3{font-size:19px}a{color:var(--green);text-underline-offset:4px}button,input,select,textarea{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--green);color:white;border:1px solid var(--green);border-radius:6px;padding:10px 22px;text-decoration:none;cursor:pointer;min-height:44px}button:hover,.button:hover{background:var(--forest)}button.secondary,.button.secondary{background:white;color:var(--green)}input,select,textarea{width:100%;border:1px solid #b8c9c0;border-radius:6px;background:white;color:var(--ink);padding:10px 12px;min-height:46px}textarea{min-height:130px;resize:vertical}label{display:grid;gap:7px}small,.muted{color:var(--muted)}small{font-size:13px}fieldset{border:1px solid var(--border);border-radius:6px;padding:18px}legend{padding:0 8px;font-weight:bold}.stack{display:grid;gap:20px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.check{display:flex;align-items:center;gap:10px}.check input{width:18px;min-height:18px;accent-color:var(--green)}:focus-visible{outline:3px solid #b77816;outline-offset:4px}.skip{position:absolute;inset-block-start:-100px;inset-inline-start:15px;z-index:50;background:white;padding:12px}.skip:focus{inset-block-start:12px}.panel{background:white;border:1px solid var(--border);border-radius:var(--radius);padding:28px;margin-block-end:24px}.notice{padding:16px 22px;border:1px solid;border-radius:6px;margin-block-end:24px}.success{background:#eaf5ee;color:#174e33;border-color:#9ac6ac}.error{background:#fff1ed;color:#8b2820;border-color:#e3aaa1}.notice ul{margin:0;padding-inline-start:20px}.public-header{max-width:1280px;margin:auto;padding:20px 36px;display:flex;align-items:center;justify-content:space-between;gap:24px;background:white}.brand{display:grid;text-decoration:none;color:var(--ink)}.brand strong{font-size:28px;color:var(--green)}.brand span{font-size:13px}.public-header nav{display:flex;gap:24px;flex-wrap:wrap;align-items:center}.public-main{max-width:1280px;margin:auto;padding:48px 36px;min-height:70vh}.public-intro{padding:80px 0;max-width:850px}.public-intro h1{font-size:44px}.public-footer{text-align:center;padding:28px;border-block-start:1px solid var(--border);font-size:14px;color:var(--muted)}.auth-panel{max-width:500px;margin:20px auto 60px}.admin-sidebar{position:fixed;inset-inline-start:0;inset-block:0;width:260px;background:var(--forest);color:white;padding:30px 22px}.admin-brand{display:grid;color:white;text-decoration:none;padding:0 12px 34px}.admin-brand strong{font-size:30px}.admin-brand span{font-size:14px;color:#d1e3da}.admin-nav summary{display:none}.admin-nav nav{display:grid;gap:8px}.admin-nav a{display:block;color:#edf4f0;text-decoration:none;padding:13px 16px;border-radius:6px}.admin-nav a:hover,.admin-nav a.selected{background:#ffffff21}.admin-workspace{margin-inline-start:260px}.admin-header{background:white;border-block-end:1px solid var(--border);padding:24px 36px;display:flex;justify-content:space-between;align-items:center;gap:24px}.admin-header h1{font-size:26px;margin:0}.header-actions{display:flex;gap:22px;align-items:center;font-size:14px}.header-actions a{color:var(--ink);text-decoration:none}.header-actions form{margin:0}.text-button{border:0;background:transparent;color:var(--ink);padding:0;min-height:44px}.text-button:hover{background:transparent;text-decoration:underline}.admin-main{max-width:1450px;margin:auto;padding:32px 36px}.welcome-panel{padding:32px;background:#eaf1ed;border:1px solid var(--border);border-radius:var(--radius);margin-block-end:28px}.welcome-panel h2{font-size:30px}.welcome-panel p{margin:0}.module-list{border:1px solid var(--border);border-radius:6px;overflow:hidden}.module-list:empty{display:none}.module-list a{padding:17px 22px;display:flex;justify-content:space-between;text-decoration:none;color:var(--ink);border-block-end:1px solid var(--border)}.module-list a:last-child{border:0}.module-list a:hover{background:var(--surface)}.account-list{margin:0 0 18px}.account-list div{display:flex;justify-content:space-between;gap:24px;padding:15px 0;border-block-end:1px solid var(--border)}.account-list dd{margin:0;overflow-wrap:anywhere}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-block-end:22px;flex-wrap:wrap}.search-form{display:flex;gap:10px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:start}th,td{padding:15px 12px;border-block-end:1px solid var(--border);white-space:nowrap}th{text-align:start;color:var(--muted);font-size:14px}.grant-row{display:grid;grid-template-columns:1fr 1fr auto;gap:12px}svg.w-5{width:20px}nav[role=navigation]{margin-block-start:22px}nav[role=navigation] a,nav[role=navigation] span{padding:4px}.auth-panel a{justify-self:start}@media(max-width:900px){.admin-sidebar{width:210px;padding:24px 14px}.admin-workspace{margin-inline-start:210px}.admin-header{align-items:start;flex-direction:column;gap:10px}.admin-main{padding:24px}.header-actions{gap:18px;flex-wrap:wrap}}@media(max-width:650px){h1{font-size:26px}.public-header{padding:16px 20px;align-items:start}.public-header nav{gap:12px;font-size:13px}.public-main{padding:28px 18px}.public-intro{padding:30px 0}.public-intro h1{font-size:30px}.admin-sidebar{position:static;width:100%;padding:15px 20px}.admin-brand{padding:0 0 10px}.admin-brand strong{font-size:26px}.admin-nav summary{display:block;cursor:pointer;padding:10px 0}.admin-nav nav{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-nav a{padding:10px}.admin-workspace{margin:0}.admin-header{padding:18px 20px}.admin-header h1{font-size:23px}.admin-main{padding:20px 16px}.panel{padding:20px;margin-block-end:20px}.welcome-panel{padding:24px}.welcome-panel h2{font-size:26px}.form-grid{grid-template-columns:1fr}.grant-row{grid-template-columns:1fr}.account-list div{flex-direction:column;gap:4px}.search-form{width:100%}.search-form input{min-width:0}.header-actions{font-size:13px}.auth-panel{margin:10px auto 30px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.admin-sidebar{overflow-y:auto}.auth-panel code{overflow-wrap:anywhere}.admin-workspace{min-width:0}html[dir=ltr] .module-list a>span:last-child{transform:scaleX(-1)}

.request-answers>div{display:grid;grid-template-columns:220px 1fr;gap:24px;padding:18px 0;border-block-end:1px solid var(--border)}.request-answers dt{font-weight:bold}.request-answers dd{margin:0;overflow-wrap:anywhere;white-space:pre-line}.option-row{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:10px}#add-option{margin-block-start:18px}@media(max-width:650px){.request-answers>div{grid-template-columns:1fr;gap:6px}.option-row{grid-template-columns:1fr}}

:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--green);outline-offset:3px}.notice-title{font-size:18px;margin-block-end:8px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.error-shell{width:min(100% - 32px,760px);margin:clamp(24px,7vh,80px) auto}.error-brand{display:flex;align-items:center;gap:16px;text-decoration:none;font-weight:bold;line-height:1.7;max-width:600px;margin-block-end:32px}.error-brand img{object-fit:contain;flex-shrink:0}.error-panel{padding:clamp(24px,5vw,48px);overflow-wrap:anywhere}.error-code{font-size:clamp(48px,10vw,80px);font-weight:bold;color:var(--green);line-height:1.2;direction:ltr;text-align:start}.error-panel h1{font-size:clamp(25px,5vw,34px);line-height:1.6}.error-panel .button{max-width:100%;text-align:center}


.language-switch{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px;border-radius:6px;flex-shrink:0}.language-switch svg{display:block;flex-shrink:0}.language-switch:focus-visible{outline:3px solid var(--green);outline-offset:3px}

/* Tajawal: locally hosted under the SIL Open Font License in fonts/tajawal/OFL.txt. */
@font-face{font-family:Tajawal;src:url('../fonts/tajawal/Tajawal-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Tajawal;src:url('../fonts/tajawal/Tajawal-Medium.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Tajawal;src:url('../fonts/tajawal/Tajawal-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
html[lang="ar"] body{font-family:Tajawal,Tahoma,Arial,sans-serif}
html[lang="ar"] :is(button,.button,nav a,legend){font-weight:500}
html[lang="ar"] :is(h1,h2,h3,strong){font-weight:700}
