@font-face {
  font-family: 'Amiri';
  src: url('/vendor/fonts/amiri/amiri-arabic-400-normal.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0600-06FF, U+0750-077F, U+08A0-08FF, U+FB50-FDFF, U+FE70-FEFF;
}

@font-face {
  font-family: 'Amiri';
  src: url('/vendor/fonts/amiri/amiri-arabic-700-normal.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0600-06FF, U+0750-077F, U+08A0-08FF, U+FB50-FDFF, U+FE70-FEFF;
}

@font-face {
  font-family: 'Amiri';
  src: url('/vendor/fonts/amiri/amiri-latin-400-normal.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

.fatwa-body,
[dir="rtl"],
.rtl {
  font-family: 'Amiri', 'Traditional Arabic', serif;
}

[dir="rtl"],
.rtl {
  direction: rtl;
  text-align: right;
}

.fatwa-body img {
  max-width: 100%;
  height: auto;
}

.fatwa-body table {
  max-width: 100%;
}

/* Design tokens and layout for refreshed UI */
:root{
  --bg: #EEF3FB; /* Cool pale blue */
  --panel: #FFFFFF; /* Card background */
  --ink: #102235; /* Deep indigo ink */
  --muted: #6B7280; /* subdued text */
  --accent: #2563EB; /* Primary blue accent */
  --accent-2: #0EA5E9; /* Sky blue secondary */
  --radius: 8px;
}

@import url('https://fonts.googleapis.com/css2?family=Merriweather:wght@300;400;700&family=Inter:wght@300;400;600&display=swap');

html,body{height:100%;}
body{
  background:var(--bg);
  color:var(--ink);
  font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

/* Site hero: restrained, typographic, memorable signature */
.site-hero{
  display:flex;
  align-items:center;
  gap:2rem;
  padding:2.25rem 1rem;
  background:linear-gradient(90deg, rgba(13,27,44,0.03) 0%, rgba(13,27,44,0.02) 100%);
  border-radius:calc(var(--radius) * 1.25);
  margin:1.25rem 0;
}
.site-hero .brand{
  flex:1 1 60%;
}
.site-hero h1{
  margin:0 0 .25rem 0;
  font-family:Merriweather, 'Amiri', serif;
  font-weight:700;
  font-size:1.75rem;
  letter-spacing:-0.02em;
  color:var(--ink);
}
.site-hero p.lead{
  margin:0;
  color:var(--muted);
}

/* signature accent: blue vertical bar */
.site-hero::before{
  content:'';
  width:6px;
  height:64px;
  background:linear-gradient(180deg,var(--accent),#60A5FA);
  border-radius:6px;
  display:block;
}

/* Cards and lists */
.fatwa-card{
  background:var(--panel);
  border-radius:var(--radius);
  padding:1rem;
  box-shadow:0 6px 18px rgba(16,34,53,0.06);
  border:1px solid rgba(16,34,53,0.04);
}
.fatwa-card h3{font-family:Merriweather, serif;margin-top:0;color:var(--ink);}
.meta{color:var(--muted);font-size:.92rem}

/* Primary button */
.btn-primary{
  background:linear-gradient(90deg,var(--accent),#3B82F6);
  border:0;color:white;padding:.55rem .9rem;border-radius:6px;font-weight:600;
}
.btn-outline-primary{border-color:var(--accent-2);color:var(--accent-2)}

/* Nav override to keep bootstrap structure but custom look */
.site-nav{background:transparent;border-bottom:1px solid rgba(16,34,53,0.06)}
.site-nav .navbar-brand{font-family:Merriweather, serif;color:var(--ink);font-weight:700}
.site-nav .nav-link{color:var(--ink)}
.site-nav .nav-search{width:100%;max-width:840px;}
.site-nav .nav-search .form-control{
  border-radius:999px;
  border-color:rgba(16,34,53,0.15);
}
.site-nav .nav-search .form-control:focus{
  border-color:var(--accent);
  box-shadow:0 0 0 .2rem rgba(37,99,235,0.15);
}
.site-nav .nav-user{
  color:var(--ink);
  font-weight:600;
  font-size:.92rem;
  padding:.5rem .75rem;
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  white-space:nowrap;
}
.site-nav .nav-role-badge{
  background:rgba(37,99,235,0.15);
  color:var(--accent);
  font-size:.65rem;
  font-weight:700;
  letter-spacing:.04em;
  padding:.3em .55em;
  border-radius:999px;
}

/* Focus and accessibility */
:focus{outline:none}
:focus-visible{outline:3px solid rgba(37,99,235,0.15);outline-offset:3px}

/* Responsive */
@media (max-width:768px){
  .site-hero{flex-direction:column;align-items:flex-start}
  .site-hero::before{height:48px}
  .site-hero h1{font-size:1.4rem}
}

/* Respect reduced motion */
@media (prefers-reduced-motion:reduce){
  *{transition:none!important}
}

/* Fatwa body tweaks: keep Amiri for RTL/Arabic, Inter for LTR */
.fatwa-body{font-family:Inter, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, "Amiri", serif}

/* Public fatwa view: question callout */
.fatwa-question-box{
  background:rgba(37,99,235,0.06);
  border:1px solid rgba(37,99,235,0.15);
  border-radius:var(--radius);
  padding:1rem 1.25rem;
  margin-bottom:1.5rem;
}
.fatwa-question-label{
  font-size:.75rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:var(--accent);
  margin-bottom:.5rem;
}

/* My Fatawa: full-width, beautified table */
.fatwa-table-card{
  background:var(--panel);
  border-radius:var(--radius);
  border:1px solid rgba(16,34,53,0.06);
  box-shadow:0 6px 18px rgba(16,34,53,0.06);
  overflow:hidden;
}
.fatwa-table{margin-bottom:0;}
.fatwa-table thead th{
  background:rgba(16,34,53,0.03);
  color:var(--muted);
  font-size:.75rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.06em;
  border-bottom:1px solid rgba(16,34,53,0.08);
  padding:.85rem 1rem;
  white-space:nowrap;
}
.fatwa-table .sort-link{
  color:inherit;
  text-decoration:none;
}
.fatwa-table .sort-link:hover{color:var(--accent-2);}
.fatwa-table .sort-link.active{color:var(--ink);}
.fatwa-table tbody td{
  padding:.85rem 1rem;
  border-bottom:1px solid rgba(16,34,53,0.05);
  vertical-align:middle;
}
.fatwa-table tbody tr:last-child td{border-bottom:0;}
.fatwa-table tbody tr{transition:background-color .12s ease;}
.fatwa-table tbody tr:hover{background:rgba(37,99,235,0.05);}
.fatwa-table .fatwa-title-cell a{
  color:var(--ink);
  font-weight:600;
  text-decoration:none;
}
.fatwa-table .fatwa-title-cell a:hover{color:var(--accent-2); text-decoration:underline;}
.fatwa-table .badge{
  font-weight:600;
  padding:.4em .7em;
  border-radius:999px;
}
.fatwa-table .status-select{
  display:inline-block;
  width:auto;
  min-width:9.5rem;
}

/* Review queue: expandable rows */
.review-row{cursor:pointer;}
.review-row:focus-visible{outline:2px solid var(--accent); outline-offset:-2px;}
.review-chevron{
  display:inline-block;
  width:1rem;
  margin-right:.4rem;
  color:var(--muted);
  transition:transform .15s ease;
}
.review-row[aria-expanded="true"] .review-chevron{transform:rotate(90deg); color:var(--accent-2);}
.review-detail-row td{padding:0; border-bottom:1px solid rgba(16,34,53,0.05);}
.review-detail-row:hover{background:none;}
.fatwa-table tbody tr.review-detail-row:last-child td{border-bottom:0;}

.dashboard-status-card{transition:box-shadow .15s ease, transform .15s ease; color:inherit;}
.dashboard-status-card:hover{box-shadow:0 .25rem .75rem rgba(16,34,53,0.1); transform:translateY(-2px);}

/* Fatwa lifecycle progress tracker */
.fatwa-progress{
  display:flex;
  align-items:flex-start;
  overflow-x:auto;
  padding:.5rem 0 1rem;
  margin-bottom:1rem;
}
.fatwa-progress-step{
  display:flex;
  flex-direction:column;
  align-items:center;
  flex:1 0 auto;
  min-width:6.5rem;
  position:relative;
  text-align:center;
}
.fatwa-progress-step::before{
  content:"";
  position:absolute;
  top:1rem;
  left:-50%;
  width:100%;
  height:2px;
  background:#DDE3EA;
  z-index:0;
}
.fatwa-progress-step:first-child::before{content:none;}
.fatwa-progress-step.is-complete::before{background:var(--accent);}
.fatwa-progress-dot{
  position:relative;
  z-index:1;
  width:2rem;
  height:2rem;
  border-radius:50%;
  background:#fff;
  border:2px solid #DDE3EA;
  color:var(--muted);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:.85rem;
  font-weight:600;
}
.fatwa-progress-step.is-complete .fatwa-progress-dot{
  background:var(--accent);
  border-color:var(--accent);
  color:#fff;
}
.fatwa-progress-step.is-current .fatwa-progress-dot{
  background:#fff;
  border-color:var(--accent-2);
  color:var(--accent-2);
  box-shadow:0 0 0 3px rgba(14,165,233,0.2);
}
.fatwa-progress-step.is-rejected .fatwa-progress-dot{
  background:#DC2626;
  border-color:#DC2626;
  color:#fff;
}
.fatwa-progress-label{
  margin-top:.4rem;
  font-size:.78rem;
  color:var(--muted);
  line-height:1.2;
}
.fatwa-progress-step.is-complete .fatwa-progress-label,
.fatwa-progress-step.is-current .fatwa-progress-label{
  color:#1F2937;
  font-weight:600;
}

