/* ======================================================
   DESIGN SYSTEM — Meghalaya High Court
   Aesthetic: Neo-Colonial Legal, Gold & Navy, Serif + Sans
   ====================================================== */
:root {
  --gold:       #B8972A;
  --gold-lt:    #D4AF5A;
  --gold-pale:  #F5EDDA;
  --navy:       #0D1B35;
  --navy-mid:   #162B52;
  --navy-lt:    #1E3A6E;
  --cream:      #FAF7F2;
  --ink:        #1A1A2E;
  --muted:      #6B7A99;
  --border:     rgba(184,151,42,0.2);
}

[x-cloak] { display:none !important; }
*, *::before, *::after { box-sizing: border-box; }

body {
  font-family: 'Source Sans 3', sans-serif;
  background: var(--cream);
  color: var(--ink);
  margin: 0; min-height: 100vh;
}
/* Court title font */
.garamond {
    font-family: 'Cormorant Garamond', serif;
}

/* Subtitle font */
.cormorant {
    font-family: 'Cormorant Garamond', serif;
    letter-spacing: 0.04em;
}

/* Page transitions */
.page-in { animation: pageIn 0.28s ease forwards; }
@keyframes pageIn {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* Gold line */
.gold-line { background: linear-gradient(90deg,transparent,var(--gold),var(--gold-lt),var(--gold),transparent); height:1px; }

/* Cards */
.card { background:white; border:1px solid var(--border); border-radius:2px; box-shadow:0 2px 14px rgba(13,27,53,0.07),0 1px 3px rgba(13,27,53,0.04); overflow:hidden; transition:box-shadow 0.2s; }
.card:hover { box-shadow:0 6px 28px rgba(13,27,53,0.1),0 2px 8px rgba(13,27,53,0.06); }

.card-head { background:linear-gradient(135deg,var(--navy) 0%,var(--navy-mid) 100%); padding:0.85rem 1.35rem; border-bottom:2px solid var(--gold); display:flex; align-items:center; gap:0.65rem; }
.card-icon { width:30px;height:30px; background:rgba(184,151,42,0.18); border:1px solid rgba(184,151,42,0.42); border-radius:2px; display:grid;place-items:center; font-size:13px;flex-shrink:0; }
.card-title { font-family:'EB Garamond',serif; font-size:1.05rem; font-weight:500; color:var(--gold-lt); letter-spacing:0.02em; }
.card-sub { font-size:0.7rem; color:rgba(255,255,255,0.4); margin-top:1px; }

/* Form */
.lbl { font-size:0.68rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:0.28rem; }
.inp { width:100%;border:1px solid #D8DEEA;background:#FAFBFD;padding:0.52rem 0.82rem;font-family:'Source Sans 3',sans-serif;font-size:0.87rem;color:var(--ink);border-radius:2px;transition:border-color 0.2s,box-shadow 0.2s;outline:none; }
.inp:focus { border-color:var(--gold);box-shadow:0 0 0 3px rgba(184,151,42,0.11);background:white; }
select.inp { appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='11' viewBox='0 0 12 12'%3E%3Cpath fill='%236B7A99' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 0.75rem center;background-color:#FAFBFD;padding-right:2rem; }

/* Buttons */
.btn { display:inline-flex;align-items:center;gap:0.45rem;font-family:'Source Sans 3',sans-serif;font-size:0.77rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;border-radius:2px;cursor:pointer;padding:0.58rem 1.45rem;transition:all 0.2s;border:none; }
.btn-navy { background:linear-gradient(135deg,var(--navy),var(--navy-mid));color:var(--gold-lt);border:1px solid var(--gold); }
.btn-navy:hover { background:linear-gradient(135deg,var(--navy-mid),var(--navy-lt));box-shadow:0 4px 14px rgba(13,27,53,0.28);transform:translateY(-1px); }
.btn-gold { background:linear-gradient(135deg,var(--gold),var(--gold-lt));color:var(--navy);font-weight:700; }
.btn-gold:hover { box-shadow:0 4px 16px rgba(184,151,42,0.28);transform:translateY(-1px); }
.btn-out { background:white;color:var(--navy);border:1px solid #C8D0E0; }
.btn-out:hover { border-color:var(--gold);color:var(--gold); }
.btn-sm { padding:0.38rem 0.9rem;font-size:0.7rem; }
.btn-xs { padding:0.3rem 0.7rem;font-size:0.67rem; }

/* Nav tabs */
.nav-tab { font-size:0.75rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:rgba(255,255,255,0.58);padding:0.68rem 1rem;border-bottom:3px solid transparent;cursor:pointer;white-space:nowrap;transition:all 0.2s;background:none;border-top:none;border-left:none;border-right:none;font-family:'Source Sans 3',sans-serif; }
.nav-tab:hover  { color:var(--gold-lt);border-bottom-color:rgba(184,151,42,0.38); }
.nav-tab.active { color:var(--gold-lt);border-bottom-color:var(--gold); }

/* Inner tabs */
.itab { font-size:0.77rem;font-weight:600;letter-spacing:0.06em;text-transform:uppercase;padding:0.68rem 1.1rem;border-bottom:2px solid transparent;color:var(--muted);cursor:pointer;transition:all 0.18s;white-space:nowrap;background:none;border-top:none;border-left:none;border-right:none;font-family:'Source Sans 3',sans-serif; }
.itab:hover  { color:var(--navy); }
.itab.active { color:var(--navy);border-bottom-color:var(--gold); }

/* Sidebar links */
.sb-link { display:flex;align-items:center;gap:0.5rem;padding:0.52rem 0.88rem;font-size:0.81rem;color:#4A5568;border-left:2px solid transparent;transition:all 0.18s;cursor:pointer;border-radius:0 2px 2px 0;width:100%;text-align:left;background:none;border-top:none;border-right:none;border-bottom:none;font-family:'Source Sans 3',sans-serif; }
.sb-link:hover  { color:var(--navy);background:var(--gold-pale);border-left-color:var(--gold); }
.sb-link.active { color:var(--navy);background:var(--gold-pale);border-left-color:var(--gold);font-weight:600; }

/* Badges */
.badge { display:inline-flex;align-items:center;gap:3px;padding:0.17rem 0.52rem;border-radius:2px;font-size:0.63rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase; }
.badge-sc  { background:rgba(184,151,42,0.14);color:var(--gold);border:1px solid rgba(184,151,42,0.38); }
.badge-hc  { background:rgba(22,43,82,0.1);color:var(--navy-mid);border:1px solid rgba(22,43,82,0.24); }
.badge-all { background:rgba(13,27,53,0.07);color:var(--navy);border:1px solid rgba(13,27,53,0.18); }

/* Info strip */
.info-strip { background:linear-gradient(90deg,rgba(184,151,42,0.09),rgba(184,151,42,0.03));border:1px solid rgba(184,151,42,0.22);border-radius:2px;padding:0.7rem 0.95rem;display:flex;align-items:flex-start;gap:0.6rem; }
.info-strip i { color:var(--gold);margin-top:1px;flex-shrink:0;font-size:0.82rem; }
.info-strip p { font-size:0.76rem;color:#7A6030;line-height:1.55;margin:0; }

/* Result table */
.rtable { width:100%;border-collapse:collapse; }
.rtable th { background:var(--navy);color:var(--gold-lt);font-size:0.67rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;padding:0.62rem 0.95rem;text-align:left; }
.rtable td { padding:0.6rem 0.95rem;font-size:0.83rem;border-bottom:1px solid #EEF0F6;color:#374151;vertical-align:middle; }
.rtable tbody tr { transition:background 0.12s; }
.rtable tbody tr:hover td { background:#FAFBFF; }
.case-no { font-family:'Courier New',monospace;color:#1D4ED8;font-weight:500;cursor:pointer; }
.case-no:hover { text-decoration:underline; }

/* Hero */
.hero { background:linear-gradient(135deg,var(--navy) 0%,var(--navy-mid) 60%,#1A3060 100%);position:relative;overflow:hidden;padding:2.4rem 2rem;margin-bottom:1.5rem;border-radius:2px; }
.hero::before { content:'';position:absolute;top:-40%;right:-8%;width:480px;height:480px;background:radial-gradient(circle,rgba(184,151,42,0.08) 0%,transparent 70%);pointer-events:none; }
.hero::after { content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent); }

/* Stat card */
.stat-card { background:white;border:1px solid var(--border);border-radius:2px;padding:1.1rem;text-align:center;box-shadow:0 2px 14px rgba(13,27,53,0.06);transition:all 0.2s; }
.stat-card:hover { box-shadow:0 6px 20px rgba(13,27,53,0.1);transform:translateY(-2px); }
.stat-num { font-family:'EB Garamond',serif;font-size:2.15rem;font-weight:600;color:var(--navy);line-height:1; }
.stat-lbl { font-size:0.67rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted);margin-top:0.32rem; }

/* Section divider */
.sec-div { display:flex;align-items:center;gap:0.8rem;margin-bottom:1rem; }
.sec-div .ln { flex:1;height:1px; }
.sec-div h3 { font-family:'EB Garamond',serif;font-size:1.05rem;font-weight:500;color:#6B7A99;margin:0;white-space:nowrap; }

/* Scrollbar */
::-webkit-scrollbar { width:5px;height:5px; }
::-webkit-scrollbar-track { background:#F0F4FA; }
::-webkit-scrollbar-thumb { background:rgba(13,27,53,0.22);border-radius:3px; }

@media(max-width:768px) {
  .nav-tab { padding:0.5rem 0.6rem;font-size:0.67rem;letter-spacing:0.05em; }
  .hero { padding:1.4rem 1rem; }
}