/* ==========================================================================
   POMS (Proclaimed Offender's Management System)
   Official Master Stylesheet & Official Pakistani Urdu Font Scaling System
   ========================================================================== */

/* Official Pakistani Urdu Fonts from Google Fonts & CDN */
@import url('https://fonts.googleapis.com/css2?family=Noto+Nastaliq+Urdu:wght@400;500;600;700&family=Gulzar&family=Inter:wght@300;400;500;600;700;800&display=swap');
@import url('https://fonts.cdnfonts.com/css/jameel-noori-nastaleeq');

:root {
    --primary-color: #21196e;
    --primary-dark: #0b1d54;
    --primary-accent: #2563eb;
    --secondary-color: #64748b;
    --success-color: #10b981;
    --danger-color: #ef4444;
    --warning-color: #f59e0b;
    --info-color: #06b6d4;
    --dark-color: #0b1d54;
    --light-bg: #f8fafc;
    
    /* Official Pakistan Urdu Nastaleeq Font Stack */
    --font-urdu: 'Jameel Noori Nastaleeq', 'Noto Nastaliq Urdu', 'Gulzar', 'Urdu Typesetting', 'Nafees Nastaleeq', 'Alvi Nastaleeq', serif;
    --font-english: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
}

/* Base Body Styles */
body {
    font-family: var(--font-english);
    background-color: var(--light-bg);
    color: #1e293b;
    -webkit-font-smoothing: antialiased;
}

/* ==========================================================================
   OFFICIAL URDU NASTALEEQ TYPOGRAPHY & INTELLIGENT WORD SPACING RULES
   ========================================================================== */

.urdu-font,
.urdu-text,
.urdu-nav,
[lang="ur"],
.nastaleeq,
.font-urdu,
span[style*="Nastaleeq"], span[style*="nastaleeq"], span[style*="Nastaliq"], span[style*="Gulzar"],
p[style*="Nastaleeq"], p[style*="nastaleeq"], p[style*="Nastaliq"], p[style*="Gulzar"],
small[style*="Nastaleeq"], small[style*="nastaleeq"], small[style*="Nastaliq"], small[style*="Gulzar"],
h1[style*="Nastaleeq"], h2[style*="Nastaleeq"], h3[style*="Nastaleeq"], h4[style*="Nastaleeq"], h5[style*="Nastaleeq"], h6[style*="Nastaleeq"],
div[style*="Nastaleeq"], label[style*="Nastaleeq"], option[style*="Nastaleeq"],
th[style*="Nastaleeq"], td[style*="Nastaleeq"], a[style*="Nastaleeq"], strong[style*="Nastaleeq"] {
    font-family: var(--font-urdu) !important;
    word-spacing: 0.28em !important; /* Proper breathing room between individual Urdu words */
    letter-spacing: 0.02em !important;
    line-height: 1.85 !important;
}

/* Base minimum size & margins for Urdu spans across the whole script */
span[style*="Nastaleeq"], span[style*="nastaleeq"], span[style*="Nastaliq"], span[style*="Gulzar"],
.urdu-font, [lang="ur"] {
    font-size: 1.05rem !important;
    display: inline-block;
    vertical-align: middle;
    margin-left: 8px !important; /* Separation between English labels and Urdu text */
    word-spacing: 0.28em !important;
}

/* Menu & Navigation specific Urdu font sizing and word spacing */
.sidebar .nav-link .urdu-nav,
.sidebar .nav-link span[style*="Nastaleeq"],
.sidebar .nav-link span[style*="Nastaliq"],
.sidebar .submenu .nav-link .urdu-nav,
.sidebar .submenu .nav-link span[style*="Nastaleeq"],
.sidebar .submenu .nav-link span[style*="Nastaliq"],
.sidebar-submenu .nav-link .urdu-nav {
    font-size: 0.92rem !important;
    margin-left: 6px !important;
    color: rgba(255, 255, 255, 0.92) !important;
    font-weight: 700 !important;
    word-spacing: 0.22em !important;
    white-space: nowrap !important;
    display: inline-block !important;
    vertical-align: middle !important;
    direction: rtl !important;
    line-height: 1.4 !important;
}

/* Sidebar Logo & Branding Urdu text */
.sidebar p[style*="Nastaleeq"],
.sidebar p[style*="Nastaliq"] {
    font-size: 0.98rem !important;
    line-height: 1.8 !important;
    word-spacing: 0.3em !important;
}

/* Page Header Titles & Subtitles */
.page-header h2 span[style*="Nastaleeq"],
.page-header h2 span[style*="Nastaliq"],
h1 span[style*="Nastaleeq"], h1 span[style*="Nastaliq"],
h2 span[style*="Nastaleeq"], h2 span[style*="Nastaliq"] {
    font-size: 1.35rem !important;
    font-weight: 700 !important;
    vertical-align: middle;
    margin-left: 12px !important;
    word-spacing: 0.32em !important;
}

.page-header p span[style*="Nastaleeq"],
.page-header p span[style*="Nastaliq"] {
    font-size: 1.05rem !important;
    margin-left: 8px !important;
    word-spacing: 0.28em !important;
}

/* Card Headers */
.card-header h5 span[style*="Nastaleeq"],
.card-header h5 span[style*="Nastaliq"],
.card-header h6 span[style*="Nastaleeq"],
.card-header h6 span[style*="Nastaliq"],
.card-title span[style*="Nastaleeq"],
.card-title span[style*="Nastaliq"] {
    font-size: 1.15rem !important;
    font-weight: 600 !important;
    margin-left: 10px !important;
    word-spacing: 0.28em !important;
}

/* Form Labels */
label span[style*="Nastaleeq"],
label span[style*="Nastaliq"],
.form-label span[style*="Nastaleeq"],
.form-label span[style*="Nastaliq"] {
    font-size: 1.05rem !important;
    color: #475569 !important;
    font-weight: 600 !important;
    margin-left: 8px !important;
    word-spacing: 0.28em !important;
}

/* Form Help & Small text */
small span[style*="Nastaleeq"],
small span[style*="Nastaliq"],
.form-text span[style*="Nastaleeq"],
.form-text span[style*="Nastaliq"] {
    font-size: 0.94rem !important;
    margin-left: 6px !important;
    word-spacing: 0.26em !important;
}

/* Table Headers & Cells */
th span[style*="Nastaleeq"],
th span[style*="Nastaliq"] {
    font-size: 0.95rem !important;
    font-weight: 600 !important;
    margin-left: 6px !important;
    word-spacing: 0.25em !important;
}

td span[style*="Nastaleeq"],
td span[style*="Nastaliq"] {
    font-size: 1.0rem !important;
    margin-left: 6px !important;
    word-spacing: 0.25em !important;
}

/* Badges */
.badge span[style*="Nastaleeq"],
.badge span[style*="Nastaliq"],
.badge .urdu-font {
    font-size: 0.95rem !important;
    margin-left: 6px !important;
    line-height: 1.4 !important;
    word-spacing: 0.22em !important;
    vertical-align: middle;
}

/* Proper line height and rendering for Nastaleeq characters */
.urdu-text, [lang="ur"] {
    line-height: 1.9;
    direction: rtl;
    word-spacing: 0.28em !important;
}

/* Smooth badges and cards */
.badge {
    font-weight: 600;
    letter-spacing: 0.2px;
}

/* CNIC Monospace Formatting */
.font-monospace, .cnic-input {
    font-family: 'Courier New', Courier, monospace !important;
    letter-spacing: 1px;
}
