/* =============================
   LATIN (Noto Sans)
   ============================= */
@font-face {
  font-family: 'Noto Sans';
  font-style: normal;
  font-weight: 400;
  src: url('/fonts/NotoSans-Regular.ttf') format('truetype');
}
@font-face {
  font-family: 'Noto Sans';
  font-style: italic;
  font-weight: 400;
  src: url('/fonts/NotoSans-Italic.ttf') format('truetype');
}
@font-face {
  font-family: 'Noto Sans';
  font-style: normal;
  font-weight: 700;
  src: url('/fonts/NotoSans-Bold.ttf') format('truetype');
}
@font-face {
  font-family: 'Noto Sans';
  font-style: italic;
  font-weight: 700;
  src: url('/fonts/NotoSans-BoldItalic.ttf') format('truetype');
}

/* =============================
   ARABIC (Noto Naskh Arabic)
   ============================= */
@font-face {
  font-family: 'Noto Naskh Arabic';
  font-style: normal;
  font-weight: 400;
  src: url('/fonts/NotoNaskhArabic-Regular.ttf') format('truetype');
}
@font-face {
  font-family: 'Noto Naskh Arabic';
  font-style: normal;
  font-weight: 700;
  src: url('/fonts/NotoNaskhArabic-Bold.ttf') format('truetype');
}

/* =============================
   URDU (Noto Nastaliq Urdu)
   ============================= */
@font-face {
  font-family: 'Noto Nastaliq Urdu';
  font-style: normal;
  font-weight: 400;
  src: url('/fonts/NotoNastaliqUrdu-Regular.ttf') format('truetype');
}
@font-face {
  font-family: 'Noto Nastaliq Urdu';
  font-style: normal;
  font-weight: 700;
  src: url('/fonts/NotoNastaliqUrdu-Bold.ttf') format('truetype');
}

/* =============================
   HEBREW
   ============================= */
@font-face {
  font-family: 'Noto Sans Hebrew';
  font-style: normal;
  font-weight: 400;
  src: url('/fonts/NotoSansHebrew-Regular.ttf') format('truetype');
}
@font-face {
  font-family: 'Noto Sans Hebrew';
  font-style: normal;
  font-weight: 700;
  src: url('/fonts/NotoSansHebrew-Bold.ttf') format('truetype');
}

/* =============================
   DEVANAGARI
   ============================= */
@font-face {
  font-family: 'Noto Sans Devanagari';
  font-style: normal;
  font-weight: 400;
  src: url('/fonts/NotoSansDevanagari-Regular.ttf') format('truetype');
}
@font-face {
  font-family: 'Noto Sans Devanagari';
  font-style: normal;
  font-weight: 700;
  src: url('/fonts/NotoSansDevanagari-Bold.ttf') format('truetype');
}

/* =============================
   SIMPLIFIED CHINESE (SC)
   ============================= */
@font-face {
  font-family: 'Noto Sans SC';
  font-style: normal;
  font-weight: 400;
  src: url('/fonts/NotoSansSC-Regular.ttf') format('truetype');
}
@font-face {
  font-family: 'Noto Sans SC';
  font-style: normal;
  font-weight: 700;
  src: url('/fonts/NotoSansSC-Bold.ttf') format('truetype');
}

/* =============================
   JAPANESE (JP)
   ============================= */
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 400;
  src: url('/fonts/NotoSansJP-Regular.ttf') format('truetype');
}
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 700;
  src: url('/fonts/NotoSansJP-Bold.ttf') format('truetype');
}

/* =============================
   THAI
   ============================= */
@font-face {
  font-family: 'Noto Sans Thai';
  font-style: normal;
  font-weight: 400;
  src: url('/fonts/NotoSansThai-Regular.ttf') format('truetype');
}
@font-face {
  font-family: 'Noto Sans Thai';
  font-style: normal;
  font-weight: 700;
  src: url('/fonts/NotoSansThai-Bold.ttf') format('truetype');
}

/* =============================
   LANGUAGE MAPPINGS
   ============================= */
[lang="en"], [lang="fr"], [lang="de"], [lang="es"], [lang="pt"], [lang="ru"], 
[lang="cs"], [lang="pl"], [lang="it"], [lang="nl"], [lang="da"], [lang="fi"], 
[lang="is"], [lang="sv"], [lang="tr"], [lang="id"] {
  direction: ltr;
  font-family: 'Noto Sans', sans-serif;
  font-variant-numeric: proportional-nums lining-nums;
  hyphens: auto;
  text-align: start;
}

[lang="ar"], [lang="fa"] {
  font-family: 'Noto Naskh Arabic', serif;
  direction: rtl;
  text-align: start;
}

[lang="ur"] {
  font-family: 'Noto Nastaliq Urdu', serif;
  direction: rtl;
  text-align: start;
}

[lang="he"] {
  font-family: 'Noto Sans Hebrew', sans-serif;
  direction: rtl;
  text-align: start;
}

[lang="hi"] {
  font-family: 'Noto Sans Devanagari', sans-serif;
  direction: ltr;
  text-align: start;
}

[lang="zh"] {
  font-family: 'Noto Sans SC', sans-serif;
  direction: ltr;
  text-align: start;
}

[lang="ja"] {
  font-family: 'Noto Sans JP', sans-serif;
  direction: ltr;
  text-align: start;
}

[lang="th"] {
  font-family: 'Noto Sans Thai', sans-serif;
  direction: ltr;
  text-align: start;
}

[dir="rtl"] code, [dir="rtl"] a, [dir="rtl"] .latin {
  direction: ltr;
  unicode-bidi: embed;
}

/* =============================
   EMPHASIS HANDLING
   ============================= */
/* For Latin scripts — keep italic */
[lang="en"] em, [lang="fr"] em, [lang="de"] em, [lang="es"] em, [lang="pt"] em, 
[lang="ru"] em, [lang="cs"] em, [lang="pl"] em, [lang="it"] em, [lang="nl"] em, 
[lang="da"] em, [lang="fi"] em, [lang="is"] em, [lang="sv"] em, [lang="tr"] em, 
[lang="id"] em {
  font-style: italic;
}

/* For scripts without italic — use light weight instead */
[lang="ar"] em, [lang="fa"] em, [lang="ur"] em, [lang="he"] em, 
[lang="hi"] em, [lang="zh"] em, [lang="ja"] em, [lang="th"] em {
  font-style: normal;
  font-weight: 700;
}

html {
    font-synthesis: none;
    font-kerning: normal;
    font-variant-ligatures: common-ligatures contextual;
    -webkit-font-smoothing: antialiased;
}
a {
    color: inherit;
    text-decoration: none;
}
a:hover {
    text-decoration: underline;
}
blockquote {
    border-inline-start: 5px solid gray;
    padding-inline-start: 10px;
}
body {
    background-color: #CCFFCC;
    font-size: 1rem;
    margin: 0;
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
}
code {
    white-space: pre-wrap;
    display: block;
}
div.header {
    box-sizing: border-box;
    align-items: center;
    background-color: white;
    display: flex;
    height: 64px;
    width: 100%;
    padding-left: 5%;
    padding-right: 5%;
}
div.header_left {
    height: inherit;
    width: 64px;
}
div.header_middle {
    align-items: center;
    flex-grow: 1;
    font-size: 1rem;
    height: inherit;
    overflow: hidden;
    text-align: center;
    white-space: pre;
}
div.header_right{
    align-content: center;
    height: inherit;
    padding-right: 16px;
    width: 128px;
}
div.header2 {
    background-color: black;
    box-sizing: border-box;
    color: white;
    display: flex;
    font-size: 0.75rem;
    height: 16px;
    justify-content: space-between;
    margin-bottom: 8px;
    padding-left: 5%;
    padding-right: 5%;
    width: 100%;
}
div.header2_left {
    font-size: inherit;
}
div.header2_middle {
    font-size: inherit;
}
div.header2_right {
    font-size: inherit;
}
a.header_logo {
    height: inherit;
}
h1, h2, h3, h4, h5, h6 {
    margin-block-start: 0px;
    margin-block-end: 0px;
}
img.header_logo {
    height: inherit;
}
form.header_search {
    height: inherit;
    width: 128px;
}
input.header_search {
    border-radius: 16px;
    height: 30px;
    width: 100%;
    padding: 0px;
    border: 1px solid black;
}
div.footer {
    align-items: center;
    background-color: black;
    box-sizing: border-box;
    color: white;
    display: flex;
    font-size: 0.75rem;
    height: 32px;
    justify-content: space-between;
    margin-top: 8px;
    padding-left: 5%;
    padding-right: 5%;
    width: 100%;
}
div.footer_left {
    font-size: inherit;
}
div.footer_middle {
    font-size: inherit;
}
div.footer_right {
    font-size: inherit;
}
div.posting {
    background-color: #FFFFFF;
    border: 2px solid black;
    border-radius: 10px;
    margin-bottom: 20px;
    margin-left: auto;
    margin-right: auto;
    padding: 10px;
    width: 90%;
}
div.posting_header {
    display: flex;
    justify-content: space-between;
    width: 100%;
}
div.posting_navigation {
    background-color: #FFFFFF;
    border: 2px solid black;
    border-radius: 10px;
    /* display: flex;
    justify-content: space-between; */
    border-radius: 10px;
    margin-bottom: 20px;
    margin-left: auto;
    margin-right: auto;
    padding: 10px;
    width: 90%;
}
div.author {
    border-bottom: 1px solid black;
    display: flex;
}
div.date {
    border-bottom: 1px solid black;
    display: flex;
}
div.body {
}
div.media {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
div.create_posting {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}
img.media {
    transition: height 1s, width 1s;
    max-height: 4em;
    max-width: 25%;
}
img.enlarged {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    margin: auto;
    z-index: 1000;
    background: #ffffff; /* Semi-transparent background for context */
    cursor: zoom-out;
}
video.media {
    width: 100%;
}
@media print {
    @page {
        size: 210mm 297mm;
        margin: 15mm;
    }
    html {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
    * {
        orphans: 2;
        widows: 2;
    }
    body {
        background-color: #ffffff;
    }
    div.header2 {
        display: none;
    }
    div.header {
        padding: 0px;
    }
    div.header_left {
        display: none;
    }
    div.header_right {
        display: none;
    }
    div.posting {
        border: none;
        padding: 0px;
        width: 100%;
    }
    div.posting_navigation {
        display: none;
    }
    div.footer {
        display: none;
    }
    svg {
        max-width: 100% !important;
    }
    video {
        display: none;
    }
}
