/* Hind Siliguri (OFL) - Bengali + Latin, self-hosted */
@font-face{font-family:'Hind Siliguri';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/hind-siliguri-400-bengali.woff2') format('woff2');unicode-range:U+0951-0952, U+0964-0965, U+0980-09FE, U+1CD0, U+1CD2, U+1CD5-1CD6, U+1CD8, U+1CE1, U+1CEA, U+1CED, U+1CF2, U+1CF5-1CF7, U+200C-200D, U+20B9, U+25CC, U+A8F1;}
@font-face{font-family:'Hind Siliguri';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/hind-siliguri-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Hind Siliguri';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/hind-siliguri-500-bengali.woff2') format('woff2');unicode-range:U+0951-0952, U+0964-0965, U+0980-09FE, U+1CD0, U+1CD2, U+1CD5-1CD6, U+1CD8, U+1CE1, U+1CEA, U+1CED, U+1CF2, U+1CF5-1CF7, U+200C-200D, U+20B9, U+25CC, U+A8F1;}
@font-face{font-family:'Hind Siliguri';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/hind-siliguri-500-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Hind Siliguri';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/hind-siliguri-600-bengali.woff2') format('woff2');unicode-range:U+0951-0952, U+0964-0965, U+0980-09FE, U+1CD0, U+1CD2, U+1CD5-1CD6, U+1CD8, U+1CE1, U+1CEA, U+1CED, U+1CF2, U+1CF5-1CF7, U+200C-200D, U+20B9, U+25CC, U+A8F1;}
@font-face{font-family:'Hind Siliguri';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/hind-siliguri-600-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Hind Siliguri';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/hind-siliguri-700-bengali.woff2') format('woff2');unicode-range:U+0951-0952, U+0964-0965, U+0980-09FE, U+1CD0, U+1CD2, U+1CD5-1CD6, U+1CD8, U+1CE1, U+1CEA, U+1CED, U+1CF2, U+1CF5-1CF7, U+200C-200D, U+20B9, U+25CC, U+A8F1;}
@font-face{font-family:'Hind Siliguri';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/hind-siliguri-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
/* ==========================================================================
   PAY (রাজস্ব ম্যানেজমেন্ট) — modern login      (screen only; print untouched)
   Colours are UNCHANGED from the original app:
     #3698D8 brand blue · #277cb3 its darker shade · white · neutral greys
   Text, markup, form field names and behaviour are untouched — style only.
   ========================================================================== */
@media screen {

:root {
  --pay-blue:  #3698D8;
  --pay-dark:  #277cb3;
  --pay-ink:   #25333f;
  --pay-muted: #66788a;
  --pay-line:  #d9e4ee;
  --pay-field: #f4f8fb;
  --pay-font:  'Hind Siliguri','Segoe UI','Nirmala UI',system-ui,-apple-system,'Helvetica Neue',Arial,sans-serif;
}

html, body { background: var(--pay-blue) !important; }
body {
  min-height: 100vh;
  font-family: var(--pay-font);
  color: var(--pay-ink);
  -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility;
  background:
    radial-gradient(1100px 560px at 92% -12%, rgba(255,255,255,.24), transparent 62%),
    radial-gradient(900px 520px at -8% 112%, rgba(39,124,179,.55), transparent 62%),
    linear-gradient(180deg, #3698D8 0%, #2f8dcb 100%) fixed !important;
}

/* ---------- title bar ---------- */
body #header-top.navbar {
  background: transparent !important; border: 0; margin: 0; padding: 18px 0 6px; min-height: 0;
}
body #header-top .middle-text {
  margin: 0; font-family: var(--pay-font);
  font-size: clamp(28px, 3.6vw, 42px); font-weight: 700; letter-spacing: .2px; line-height: 1.25;
  text-shadow: 0 2px 18px rgba(8,50,90,.30);
}
body #header-top .middle-text a { color: #fff; }

/* ---------- logo strip -> floating white card ---------- */
body .main_content_area { padding: 0 !important; background: transparent !important; }
body .top-section {
  width: min(1180px, calc(100% - 32px)); margin: 10px auto 0; padding: 10px 18px;
  background: #fff; border: 0; border-radius: 18px;
  box-shadow: 0 22px 44px -26px rgba(8,50,90,.7);
}
body .top-section .container-fluid { padding: 0; }
body .top-section .row { display: flex; align-items: center; margin: 0; }
body .top-section .row::before, body .top-section .row::after { display: none; }
body .top-section .row > [class*="col-"] { float: none; padding: 0; }
body .top-section .row > .col-md-3, body .top-section .row > .col-xs-3 { width: 18%; }
body .top-section .row > .col-md-6, body .top-section .row > .col-xs-6 { width: 64%; }
body .top-section .logo-img, body .top-section .user-img {
  display: block; float: none; width: 56px; height: 56px; margin: 0; object-fit: contain;
  filter: drop-shadow(0 4px 8px rgba(8,50,90,.25));
}
body .top-section .left { display: flex; justify-content: flex-start; }
body .top-section .row > div:last-child { display: flex; justify-content: flex-end; }
body .top-section .ofc-name {
  margin: 0; text-align: center;
  font-family: var(--pay-font); font-size: clamp(19px, 2.2vw, 29px); font-weight: 600; color: var(--pay-blue);
}

/* ---------- login card ---------- */
body #content { padding-top: 26px; }
body #content .m-t-large { margin-top: 18px; }
body #content .panel {
  position: relative; margin: 36px auto 0; padding: 38px 0 6px;
  max-width: 460px;
  background: rgba(255,255,255,.98); border: 0; border-radius: 24px;
  box-shadow: 0 46px 90px -34px rgba(8,50,90,.75), 0 0 0 1px rgba(255,255,255,.45);
  animation: payRise .6s cubic-bezier(.2,.8,.2,1) both;
}
@keyframes payRise { from { opacity: 0; transform: translateY(16px) scale(.985); } to { opacity: 1; transform: none; } }
/* lock badge (inline SVG, no icon-font dependency) */
body #content .panel::before {
  content: ""; position: absolute; left: 50%; top: -34px; width: 68px; height: 68px; margin-left: -34px;
  border-radius: 22px;
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4.5' y='10.5' width='15' height='10' rx='2.6'/%3E%3Cpath d='M8 10.5V8a4 4 0 0 1 8 0v2.5'/%3E%3Ccircle cx='12' cy='15.5' r='1.15' fill='%23fff' stroke='none'/%3E%3C/svg%3E") center / 32px no-repeat,
    linear-gradient(140deg, var(--pay-dark) 0%, var(--pay-blue) 100%);
  box-shadow: 0 16px 32px -12px rgba(39,124,179,.9), 0 0 0 6px rgba(255,255,255,.95);
}
body #content .panel-heading {
  background: transparent; border: 0; padding: 6px 28px 0;
  font-family: var(--pay-font); font-size: 27px; font-weight: 700; color: var(--pay-ink);
}
body #content .panel-body { padding: 14px 30px 26px; }
body #content .block { margin-bottom: 16px; }
body #content .control-label {
  display: block; margin: 0 0 6px; font-family: var(--pay-font);
  font-size: 14.5px; font-weight: 600; color: #3d4e5c;
}
body #content .form-control {
  height: 50px; padding: 0 15px;
  font-family: var(--pay-font); font-size: 16px; color: var(--pay-ink);
  background-color: var(--pay-field);
  border: 1.5px solid var(--pay-line); border-radius: 13px; box-shadow: none;
  transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}
body #content .form-control::placeholder { color: #8a9bab; }
body #content .form-control:hover:not(:focus) { border-color: #bdd0e0; }
body #content .form-control:focus {
  background-color: #fff; border-color: var(--pay-blue); outline: 0;
  box-shadow: 0 0 0 4px rgba(54,152,216,.22);
}
body #content select.form-control {
  -webkit-appearance: none; appearance: none; padding-right: 44px; cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233698D8' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 15px center; background-size: 17px;
}
/* buttons */
body #content .panel-body > .btn {
  width: calc(50% - 5px); height: 50px; margin: 8px 0 0; padding: 0 12px;
  font-family: var(--pay-font); font-size: 16.5px; font-weight: 600; letter-spacing: .2px; line-height: 48px;
  border-radius: 13px; text-shadow: none;
  transition: transform .15s ease, box-shadow .2s ease, background-color .2s ease;
}
body #content .panel-body > .btn + .btn { margin-left: 6px; }
body #content .btn-primary {
  color: #fff; background: var(--pay-blue); border: 0;
  box-shadow: 0 14px 26px -14px rgba(39,124,179,.95);
}
body #content .btn-primary:hover, body #content .btn-primary:focus { background: var(--pay-dark); transform: translateY(-1px); box-shadow: 0 18px 30px -14px rgba(39,124,179,1); }
body #content .btn-primary:active { transform: none; }
body #content .btn-white {
  color: var(--pay-dark); background: #fff; border: 1.5px solid #bcd3e4; box-shadow: none; line-height: 47px;
}
body #content .btn-white:hover, body #content .btn-white:focus { background: #eef6fc; border-color: var(--pay-blue); }
body #content .btn:focus-visible { outline: 3px solid rgba(54,152,216,.4); outline-offset: 2px; }
body #content .send { margin-top: 10px; font-size: 15px; font-weight: 600; color: #c0392b; }

/* ---------- footer ---------- */
body #footer { margin-top: 26px; padding-bottom: 20px; }
body #footer, body #footer a {
  color: rgba(255,255,255,.88); font-size: 14px; letter-spacing: .2px; text-shadow: 0 1px 6px rgba(8,50,90,.35);
}
body #footer a { color: #fff; font-weight: 600; border-bottom: 1px solid rgba(255,255,255,.4); }
body #footer a:hover { border-bottom-color: #fff; text-decoration: none; }

/* ---------- small screens ---------- */
@media (max-width: 600px) {
  body #header-top.navbar { padding: 14px 10px 4px; }
  body .top-section { width: calc(100% - 20px); padding: 8px 12px; border-radius: 16px; }
  body .top-section .logo-img, body .top-section .user-img { width: 44px; height: 44px; }
  body .top-section .row > .col-md-3, body .top-section .row > .col-xs-3 { width: 17%; }
  body .top-section .row > .col-md-6, body .top-section .row > .col-xs-6 { width: 66%; }
  body #content .panel { margin: 34px 12px 0; max-width: none; border-radius: 22px; }
  body #content .panel-body { padding: 12px 20px 22px; }
}
@media (prefers-reduced-motion: reduce) {
  body #content .panel { animation: none; }
  body #content * { transition: none !important; }
}

} /* /@media screen */
