/* MAWJ Awards Core — component styles (C+A: premium awards + editorial literary).
   Uses the theme tokens when present, with the official palette as fallback, so components look right under any theme. */
.mawj-widget,.mawj-single,.mawj-dash,.mawj-form,.mawj-grid,.mawj-filters,.mawj-empty,.mawj-steps,.mawj-stats,.mawj-hero,.mawj-books,.mawj-results,.mawj-faq,.mawj-social,.mawj-result,.mawj-table,.mawj-about-wrap,.mawj-card{
  --_bg:var(--mawj-bg,#081416);--_surface:var(--mawj-surface,#12594F);--_accent:var(--mawj-accent,#39C6AA);--_text:var(--mawj-text,#EAF3EF);
  --_bg2:var(--mawj-bg-2,#0d1d20);--_line:var(--mawj-line,rgba(234,243,239,.14));--_line2:var(--mawj-line-2,rgba(234,243,239,.24));
  --_muted:var(--mawj-muted,rgba(234,243,239,.76));--_faint:var(--mawj-faint,rgba(234,243,239,.55));
  --_display:var(--mawj-font-display,"Amiri","Noto Naskh Arabic",serif);
  --_r:var(--mawj-radius,10px);--_rl:var(--mawj-radius-lg,16px);
}
.mawj-ico{width:24px;height:24px;flex:none}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* buttons, badges, notices */
.mawj-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;background:var(--_accent,#39C6AA);color:#081416;border:2px solid var(--_accent,#39C6AA);border-radius:8px;padding:10px 20px;font:inherit;font-weight:700;line-height:1.3;text-decoration:none;cursor:pointer;transition:background-color .15s,color .15s}
.mawj-btn:hover{background:transparent;color:var(--_accent,#39C6AA)}
.mawj-btn--ghost{background:transparent;color:var(--_accent,#39C6AA)}
.mawj-btn--ghost:hover{background:var(--_accent,#39C6AA);color:#081416}
.mawj-btn:disabled,.mawj-btn[aria-busy=true]{opacity:.6;cursor:wait}
.mawj-btn:focus-visible,.mawj-form :focus-visible,.mawj-filters :focus-visible,.mawj-dash a:focus-visible,.mawj-faq summary:focus-visible,.mawj-social a:focus-visible,.mawj-card a:focus-visible{outline:3px solid var(--_accent,#39C6AA);outline-offset:2px}
.mawj-badge{display:inline-block;align-self:flex-start;padding:1px 10px;border-radius:99px;font-size:.8rem;line-height:1.7;background:var(--_bg);color:var(--_accent);border:1px solid var(--_accent);white-space:nowrap}
.mawj-badge--paused,.mawj-badge--scheduled,.mawj-badge--pending,.mawj-badge--under_review{color:#f2c26b;border-color:#f2c26b}
.mawj-badge--closed,.mawj-badge--completed,.mawj-badge--draft{color:var(--_faint);border-color:var(--_line2)}
.mawj-badge--rejected{color:#ff9a8f;border-color:#ff9a8f}
.mawj-badge--changes_requested{color:#9ec9ff;border-color:#9ec9ff}
.mawj-notice{padding:12px 16px;border-radius:8px;margin-block:12px;border:1px solid;color:var(--_text)}
.mawj-notice--success{border-color:#39C6AA;background:rgba(57,198,170,.12)}
.mawj-notice--error{border-color:#ff8a80;background:rgba(255,138,128,.12)}
.mawj-notice--info{border-color:#9ec9ff;background:rgba(158,201,255,.12)}
.mawj-note{color:var(--_muted);font-size:.92rem}
.mawj-empty{padding:28px;border:1px dashed var(--_line2);border-radius:var(--_r);text-align:center;color:var(--_muted)}
.mawj-empty p{margin:0}

/* grid + challenge card */
.mawj-grid{display:grid;grid-template-columns:repeat(var(--mawj-cols,3),minmax(0,1fr));gap:20px;margin-block:20px}
@media(max-width:1000px){.mawj-grid{grid-template-columns:repeat(min(var(--mawj-cols,3),2),minmax(0,1fr))}}
@media(max-width:600px){.mawj-grid{grid-template-columns:1fr}}
.mawj-card{background:var(--_bg2);color:var(--_text);border:1px solid var(--_line2);border-radius:var(--_rl);overflow:hidden;display:flex;flex-direction:column;min-width:0}
.mawj-card__head{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:12px 16px;border-bottom:1px solid var(--_line)}
.mawj-card__dates{color:var(--_faint);font-size:.82rem}
.mawj-card__main{display:grid;grid-template-columns:76px minmax(0,1fr);gap:14px;padding:16px;align-items:start}
.mawj-card__cover{display:block;aspect-ratio:2/3;max-width:100%;border-radius:3px 6px 6px 3px;overflow:hidden;background:linear-gradient(90deg,rgba(0,0,0,.35) 0 8%,transparent 8%),#10272a;border:1px solid var(--_line2);box-shadow:0 10px 24px -14px rgba(0,0,0,.8)}
.mawj-card__cover img{width:100%;height:100%;object-fit:cover;display:block}
.mawj-card__cover--wide{aspect-ratio:16/10;border-radius:0;border:0;border-bottom:1px solid var(--_line);background:radial-gradient(80% 90% at 30% 20%,rgba(57,198,170,.16),transparent 70%),#10272a;box-shadow:none}
.mawj-card__nocover{display:grid;place-items:center;height:100%;padding:6px;text-align:center;font-size:.72rem;line-height:1.4;color:var(--_faint)}
.mawj-card__title{margin:0 0 4px;font-family:var(--_display);font-weight:700;font-size:1.3rem;line-height:1.35}
.mawj-card__title a{color:inherit;text-decoration:none}
.mawj-card__title a:hover{color:var(--_accent)}
.mawj-card__book,.mawj-card__meta,.mawj-card__excerpt{margin:0;color:var(--_muted);font-size:.92rem}
.mawj-card__body{padding:16px;display:flex;flex-direction:column;gap:8px;flex:1}
.mawj-prize{display:flex;gap:12px;align-items:center;margin:0 16px;padding:12px 14px;border-radius:var(--_r);background:linear-gradient(135deg,rgba(18,89,79,.95),rgba(18,89,79,.55));border:1px solid rgba(57,198,170,.35)}
.mawj-prize dt{font-size:.8rem;color:var(--_muted)}
.mawj-prize dd{margin:0;font-weight:700}
.mawj-card__facts{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px 16px 0;margin:0}
.mawj-card__facts dt{font-size:.8rem;color:var(--_faint)}
.mawj-card__facts dd{margin:0;font-size:.92rem}
.mawj-verify{margin:14px 16px 0;padding:12px;border-radius:var(--_r);border:1px dashed var(--_line2)}
.mawj-verify__lbl{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:.8rem;margin-bottom:6px}
.mawj-verify__lbl b{color:var(--_accent);font-weight:500}
.mawj-verify__none{color:var(--_faint);font-size:.82rem}
.mawj-card--challenge>.mawj-btn{margin:auto 16px 16px}
.mawj-card--challenge>:nth-last-child(2){margin-bottom:16px}
.mawj-card .mawj-btn--ghost{align-self:stretch}
.mawj-card--project .mawj-btn{margin-top:auto}
.mawj-progress{display:grid;gap:6px}
.mawj-progress__bar{height:8px;background:rgba(234,243,239,.16);border-radius:99px;overflow:hidden}
.mawj-progress__bar span{display:block;height:100%;background:var(--_accent)}
.mawj-progress small{color:var(--_muted);font-size:.82rem}

/* forms + filters */
.mawj-form,.mawj-filters{display:grid;gap:10px;max-width:560px}
.mawj-form label{font-weight:500}
.mawj-filters{max-width:none;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:end;padding:16px;border:1px solid var(--_line);border-radius:var(--_rl);background:var(--_bg2)}
.mawj-filters label{display:grid;gap:4px;font-size:.9rem;color:var(--_muted)}
.mawj-form input:not([type=checkbox]),.mawj-form select,.mawj-form textarea,.mawj-filters input,.mawj-filters select{width:100%;min-height:44px;padding:10px 12px;border-radius:8px;border:1px solid var(--_line2);background:#0a181b;color:var(--_text);font:inherit}
.mawj-form input:focus,.mawj-form select:focus,.mawj-form textarea:focus,.mawj-filters input:focus,.mawj-filters select:focus{border-color:var(--_accent)}
.mawj-check{display:flex;gap:10px;align-items:flex-start;font-weight:400!important}
.mawj-check input{margin-top:.4em;width:18px;height:18px;accent-color:#39C6AA}
.mawj-hp{position:absolute;inset-inline-start:-9999px;width:1px;height:1px;overflow:hidden}
.mawj-form .mawj-btn{justify-self:start;margin-top:6px}

/* single challenge */
.mawj-single{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:40px;align-items:start}
.mawj-single__cover img{width:100%;height:auto;border-radius:4px 10px 10px 4px;box-shadow:0 24px 50px -24px #000}
.mawj-single__main>*+*{margin-top:16px}
.mawj-single h2{font-family:var(--_display);font-size:1.6rem;margin-top:32px}
.mawj-facts{display:grid;grid-template-columns:auto 1fr;gap:8px 18px;padding:16px;border:1px solid var(--_line);border-radius:var(--_r);background:var(--_bg2)}
.mawj-facts dt{color:var(--_faint)}.mawj-facts dd{margin:0}
@media(max-width:780px){.mawj-single{grid-template-columns:1fr}.mawj-single__cover{max-width:260px}}
.mawj-result{display:flex;gap:16px;align-items:center;padding:20px;border-radius:var(--_rl);border:1px solid rgba(57,198,170,.45);background:linear-gradient(135deg,rgba(18,89,79,.8),rgba(8,20,22,.6))}
.mawj-result .mawj-emblem{width:72px;height:72px;color:var(--_accent);flex:none}
.mawj-result h2{margin:0!important;font-size:1.3rem!important}
.mawj-result p{margin:4px 0 0}

/* dashboard */
.mawj-dash{display:grid;grid-template-columns:230px minmax(0,1fr);gap:24px;align-items:start}
.mawj-dash__nav{display:flex;flex-direction:column;gap:6px;position:sticky;top:96px}
.mawj-dash__nav a{padding:10px 14px;border-radius:8px;text-decoration:none;color:inherit;border:1px solid var(--_line2);min-height:44px;display:flex;align-items:center}
.mawj-dash__nav a:hover{border-color:var(--_accent)}
.mawj-dash__nav a[aria-current=page]{background:var(--_surface);border-color:var(--_accent)}
.mawj-dash__panel{background:var(--_bg2);border:1px solid var(--_line);padding:24px;border-radius:var(--_rl);min-width:0}
.mawj-dash__panel h2{margin-top:0;font-family:var(--_display)}
@media(max-width:780px){.mawj-dash{grid-template-columns:1fr}.mawj-dash__nav{position:static;flex-direction:row;flex-wrap:wrap}.mawj-dash__nav a{flex:1 1 auto}}
.mawj-sub{padding:16px 0;border-bottom:1px solid var(--_line);display:grid;gap:6px}
.mawj-sub p{margin:0;overflow-wrap:anywhere}
.mawj-sub .mawj-badge{justify-self:start}
.mawj-table{width:100%;border-collapse:collapse;font-size:.95rem}
.mawj-table th,.mawj-table td{text-align:start;padding:10px 8px;border-bottom:1px solid var(--_line)}
.mawj-table th{color:var(--_faint);font-weight:500}

/* steps + stats */
.mawj-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;margin:0;padding:0;counter-reset:s;border:1px solid var(--_line);border-radius:var(--_rl);overflow:hidden}
.mawj-steps li{counter-increment:s;padding:22px;border-inline-start:1px solid var(--_line)}
.mawj-steps li:first-child{border-inline-start:0}
.mawj-steps li::before{content:counter(s,arabic-indic);display:block;font-family:var(--_display);font-size:2.2rem;line-height:1;color:var(--_accent);margin-bottom:12px}
.mawj-steps h3{margin:0 0 6px;font-size:1.1rem}
.mawj-steps p{margin:0;color:var(--_muted);font-size:.95rem}
@media(max-width:900px){.mawj-steps{grid-template-columns:1fr 1fr}.mawj-steps li:nth-child(3){border-inline-start:0}.mawj-steps li:nth-child(n+3){border-top:1px solid var(--_line)}}
@media(max-width:560px){.mawj-steps{grid-template-columns:1fr}.mawj-steps li{border-inline-start:0!important}.mawj-steps li+li{border-top:1px solid var(--_line)}}
.mawj-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;border:1px solid var(--_line);border-radius:var(--_rl);background:var(--_bg2);font-variant-numeric:tabular-nums}
.mawj-stats>div{padding:18px 22px;border-inline-start:1px solid var(--_line)}
.mawj-stats>div:first-child{border-inline-start:0}
.mawj-stats dt{font-size:.85rem;color:var(--_faint)}
.mawj-stats dd{margin:4px 0 0;font-size:1.8rem;font-weight:700}
@media(max-width:560px){.mawj-stats{grid-template-columns:1fr}.mawj-stats>div{border-inline-start:0}.mawj-stats>div+div{border-top:1px solid var(--_line)}}

/* hero component */
.mawj-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(24px,5vw,64px);align-items:center;padding-block:clamp(32px,6vw,80px)}
.mawj-hero--center{grid-template-columns:1fr;text-align:center;justify-items:center}
.mawj-hero--center .mawj-hero__cta{justify-content:center}
.mawj-eyebrow{display:inline-flex;align-items:center;gap:10px;margin:0 0 18px;color:var(--_accent);font-size:.9rem;letter-spacing:.04em}
.mawj-eyebrow::before{content:"";width:28px;height:1px;background:currentColor}
.mawj-hero__title{margin:0;font-family:var(--_display);font-weight:700;font-size:clamp(2.4rem,6vw,4.8rem);line-height:1.2}
.mawj-hero__cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.mawj-hero__art{justify-self:center;width:min(100%,360px)}
.mawj-hero__art .mawj-emblem{width:100%;height:auto;color:var(--_accent)}
.mawj-hero__img{width:100%;height:auto;border-radius:var(--_rl)}
@media(max-width:780px){.mawj-hero{grid-template-columns:1fr}.mawj-hero__art{width:min(70%,260px)}}

/* books */
.mawj-books{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:28px;list-style:none;margin:0;padding:0}
.mawj-book a{display:block;border-radius:3px 8px 8px 3px;overflow:hidden;box-shadow:0 20px 40px -22px #000;transition:transform .2s}
.mawj-book a:hover{transform:translateY(-4px)}
.mawj-book__cover{display:block;width:100%;aspect-ratio:2/3;height:auto;object-fit:cover}
.mawj-book__title{margin:12px 0 0;font-family:var(--_display);font-weight:700;font-size:1.1rem}
.mawj-book__meta{margin:2px 0 0;color:var(--_muted);font-size:.88rem}
@media(prefers-reduced-motion:reduce){.mawj-book a{transition:none}.mawj-book a:hover{transform:none}}

/* results */
.mawj-results{list-style:none;margin:0;padding:0;border-top:1px solid var(--_line2)}
.mawj-result-row{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:20px;align-items:center;padding-block:18px;border-bottom:1px solid var(--_line2)}
.mawj-result-row__cover img{width:64px;height:auto;border-radius:3px 6px 6px 3px;display:block}
.mawj-result-row h3{margin:0;font-family:var(--_display);font-size:1.35rem}
.mawj-result-row h3 a{color:inherit;text-decoration:none}
.mawj-result-row__facts{display:flex;gap:24px;margin:0;font-variant-numeric:tabular-nums}
.mawj-result-row__facts dt{font-size:.8rem;color:var(--_faint)}
.mawj-result-row__facts dd{margin:0;font-weight:700}
@media(max-width:700px){.mawj-result-row{grid-template-columns:52px minmax(0,1fr)}.mawj-result-row__facts{grid-column:1/-1;flex-wrap:wrap}}

/* FAQ (native details) */
.mawj-faq{border-top:1px solid var(--_line2)}
.mawj-faq__item{border-bottom:1px solid var(--_line2)}
.mawj-faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;padding-block:18px;min-height:44px;font-weight:700;font-size:1.05rem}
.mawj-faq summary::-webkit-details-marker{display:none}
.mawj-faq summary::after{content:"+";color:var(--_accent);font-size:1.5em;line-height:1;flex:none}
.mawj-faq details[open] summary::after{content:"−"}
.mawj-faq__a{padding-bottom:18px;color:var(--_muted);max-width:68ch}
.mawj-faq__a p{margin:0}

/* social */
.mawj-social{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.mawj-social__link{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:6px 14px 6px 8px;border:1px solid var(--_line2);border-radius:99px;color:var(--_text);text-decoration:none;font-size:.9rem}
.mawj-social__link:hover{border-color:var(--_accent);color:var(--_accent)}
.mawj-social__mark{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--_surface);font-weight:700;font-size:.8rem}

/* widget wrapper + about + contact */
.mawj-widget__head{margin-bottom:20px}
.mawj-widget__title{font-family:var(--_display);font-size:clamp(1.6rem,3vw,2.3rem);margin:0}
.mawj-widget__intro{margin:8px 0 0;color:var(--_muted);max-width:60ch}
.mawj-about-wrap.has-img{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:32px;align-items:center}
.mawj-about__img{width:100%;height:auto;border-radius:var(--_rl)}
@media(max-width:780px){.mawj-about-wrap.has-img{grid-template-columns:1fr}}
.mawj-prose{max-width:70ch}
.mawj-contact-alt{margin-top:16px;color:var(--_muted)}
@media(prefers-reduced-motion:reduce){.mawj-btn{transition:none}}

/* 1.5.0: field errors, contact layout, books library */
.mawj-field-error{margin:-4px 0 4px;color:#ffb4ab;font-size:.9rem}
.mawj-form [aria-invalid=true]{border-color:#ff8a80!important}
.mawj-form__alt{margin:4px 0 0;font-size:.95rem}
.mawj-form__alt a,.mawj-back{display:inline-flex;align-items:center;min-height:44px}
[data-mawj-flash]:focus{outline:3px solid var(--_accent,#39C6AA);outline-offset:2px}
.mawj-contact{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(20px,4vw,48px);align-items:start}
.mawj-contact__intro{color:var(--_muted);margin:0 0 12px;max-width:60ch}
.mawj-contact__aside{padding:20px;border:1px solid var(--_line2);border-radius:12px}
.mawj-contact__h{font-size:1.05rem;margin:0 0 8px}
.mawj-contact__aside .mawj-contact-alt{margin:0 0 18px;word-break:break-all}
@media(max-width:820px){.mawj-contact{grid-template-columns:minmax(0,1fr)}}
.mawj-books--library .mawj-book a{text-decoration:none;color:inherit;box-shadow:none;overflow:visible}
.mawj-books--library .mawj-book__cover{border-radius:3px 8px 8px 3px;box-shadow:0 20px 40px -22px #000}
.mawj-books--library .mawj-book__title{display:block}
.mawj-book__cover--none{display:grid;place-items:center;aspect-ratio:2/3;padding:12px;background:linear-gradient(160deg,#12594F,#0c2e2b);color:#EAF3EF;font-weight:700;text-align:center}
.mawj-book-detail{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:clamp(20px,4vw,40px);align-items:start;margin-bottom:32px}
.mawj-book-detail__cover .mawj-book__cover{width:100%;height:auto}
.mawj-book-detail__title{margin:0 0 12px}
.mawj-book-detail__facts{display:grid;gap:8px;margin:0 0 16px}
.mawj-book-detail__facts div{display:flex;gap:10px}
.mawj-book-detail__facts dt{color:var(--_muted);min-width:70px}
.mawj-book-detail__facts dd{margin:0}
@media(max-width:600px){.mawj-book-detail{grid-template-columns:minmax(0,1fr)}.mawj-book-detail__cover{max-width:200px}}

/* 1.5.0: progress checklist, participation */
.mawj-progress-box{padding:18px;border:1px solid var(--_line2);border-radius:12px;margin:0 0 18px}
.mawj-progress-box__title{margin:0 0 10px;font-size:1.15rem}
.mawj-progress-box__title a{color:inherit}
.mawj-progress-box__sum p{margin:8px 0 12px}
.mawj-checklist{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.mawj-checklist__item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:6px 12px;align-items:center;padding:10px 12px;border-radius:8px;background:rgba(234,243,239,.04)}
.mawj-checklist__fb,.mawj-checklist__next{grid-column:1/-1;margin:0;font-size:.9rem;color:var(--_muted)}
.mawj-checklist__fb{color:#ffb4ab}
.mawj-checklist__pts{font-weight:700;min-width:52px;text-align:end}
.mawj-chip{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.82rem;border:1px solid var(--_line2);white-space:nowrap}
.mawj-chip--approved{border-color:#39C6AA;color:#39C6AA}
.mawj-chip--submitted,.mawj-chip--pending{border-color:#9ec9ff;color:#9ec9ff}
.mawj-chip--rejected{border-color:#ff8a80;color:#ffb4ab}
.mawj-form--inline{display:block;max-width:none;margin:0 0 10px}
.mawj-cta-row{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0}
.mawj-participate{scroll-margin-top:100px}
@media(max-width:480px){.mawj-checklist__item{grid-template-columns:minmax(0,1fr) auto}.mawj-checklist__pts{grid-column:2}.mawj-cta-row .mawj-btn{flex:1 1 100%;text-align:center}}
