/* ---------------------------------------------------------------
   SKO Platform - shared design tokens
   Loaded before site.css / admin.css on every page.
   --------------------------------------------------------------- */

@font-face {
  font-family: 'Noto Sans Bengali';
  font-style: normal; font-weight: 400; font-display: swap;
  src: url('../vendor/fonts/noto-sans-bengali-bengali-400-normal.woff2') format('woff2');
  unicode-range: U+0964-0965, U+0980-09FE, U+1CD0, U+200C-200D, U+25CC, U+A8F1;
}
@font-face {
  font-family: 'Noto Sans Bengali';
  font-style: normal; font-weight: 500; font-display: swap;
  src: url('../vendor/fonts/noto-sans-bengali-bengali-500-normal.woff2') format('woff2');
  unicode-range: U+0964-0965, U+0980-09FE, U+1CD0, U+200C-200D, U+25CC, U+A8F1;
}
@font-face {
  font-family: 'Noto Sans Bengali';
  font-style: normal; font-weight: 700; font-display: swap;
  src: url('../vendor/fonts/noto-sans-bengali-bengali-700-normal.woff2') format('woff2');
  unicode-range: U+0964-0965, U+0980-09FE, U+1CD0, U+200C-200D, U+25CC, U+A8F1;
}

:root {
  --sko-ink:        #14233B;
  --sko-ink-soft:   #35435C;
  --sko-paper:      #F6F5F1;
  --sko-card:       #FFFFFF;
  --sko-accent:     #0E6B57;
  --sko-accent-dk:  #0A5343;
  --sko-accent-bg:  #E4F1EC;
  --sko-amber:      #B0700F;
  --sko-amber-bg:   #FBF0DC;
  --sko-muted:      #6E6C66;
  --sko-line:       #E2E0D9;
  --sko-line-soft:  #EFEDE7;
  --sko-danger:     #A32D2D;
  --sko-danger-bg:  #FBEAEA;

  --sko-radius:     10px;
  --sko-radius-sm:  6px;
  --sko-shadow:     0 1px 2px rgba(20,35,59,.06), 0 4px 16px rgba(20,35,59,.05);

  --bs-body-font-family: 'Noto Sans Bengali', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
  --bs-body-color: var(--sko-ink);
  --bs-body-bg: var(--sko-paper);
  --bs-primary: var(--sko-accent);
  --bs-link-color: var(--sko-accent-dk);
  --bs-link-hover-color: var(--sko-ink);
  --bs-border-color: var(--sko-line);
}

body {
  font-family: var(--bs-body-font-family);
  background: var(--sko-paper);
  color: var(--sko-ink);
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5 { font-weight: 600; letter-spacing: -.01em; }

a { text-decoration: none; }
a:hover { text-decoration: underline; }

.btn { border-radius: var(--sko-radius-sm); font-weight: 500; }
.btn-primary {
  --bs-btn-bg: var(--sko-accent); --bs-btn-border-color: var(--sko-accent);
  --bs-btn-hover-bg: var(--sko-accent-dk); --bs-btn-hover-border-color: var(--sko-accent-dk);
  --bs-btn-active-bg: var(--sko-accent-dk); --bs-btn-active-border-color: var(--sko-accent-dk);
  --bs-btn-disabled-bg: var(--sko-accent); --bs-btn-disabled-border-color: var(--sko-accent);
}
.btn-outline-ink {
  --bs-btn-color: var(--sko-ink); --bs-btn-border-color: var(--sko-line);
  --bs-btn-hover-bg: var(--sko-ink); --bs-btn-hover-border-color: var(--sko-ink); --bs-btn-hover-color: #fff;
}
.btn-ink {
  --bs-btn-bg: var(--sko-ink); --bs-btn-border-color: var(--sko-ink); --bs-btn-color: #fff;
  --bs-btn-hover-bg: var(--sko-ink-soft); --bs-btn-hover-border-color: var(--sko-ink-soft); --bs-btn-hover-color: #fff;
}

.form-control, .form-select {
  border-radius: var(--sko-radius-sm);
  border-color: var(--sko-line);
  padding: .55rem .75rem;
}
.form-control:focus, .form-select:focus {
  border-color: var(--sko-accent);
  box-shadow: 0 0 0 .18rem rgba(14,107,87,.15);
}
.form-label { font-weight: 500; font-size: .875rem; margin-bottom: .35rem; }

.card { border: 1px solid var(--sko-line); border-radius: var(--sko-radius); background: var(--sko-card); box-shadow: var(--sko-shadow); }

.sko-chip {
  display: inline-flex; align-items: center; gap: .35rem;
  font-size: .75rem; font-weight: 500; line-height: 1;
  padding: .35rem .6rem; border-radius: 999px; border: 1px solid transparent;
}
.sko-chip .dot { width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.chip-pending     { background: #F1EFE8; color: var(--sko-muted); border-color: var(--sko-line); }
.chip-in_progress { background: var(--sko-amber-bg); color: var(--sko-amber); border-color: #F0D8AA; }
.chip-delivered   { background: var(--sko-accent-bg); color: var(--sko-accent-dk); border-color: #BFDED3; }
.chip-approved    { background: var(--sko-ink); color: #fff; border-color: var(--sko-ink); }

.sko-meter { height: 8px; background: var(--sko-line-soft); border-radius: 999px; overflow: hidden; }
.sko-meter > span { display: block; height: 100%; background: var(--sko-accent); border-radius: 999px; transition: width .5s ease; }

.text-muted-ink { color: var(--sko-muted) !important; }
.small-caps { font-size: .72rem; letter-spacing: .09em; text-transform: uppercase; font-weight: 600; color: var(--sko-muted); }

:focus-visible { outline: 2px solid var(--sko-accent); outline-offset: 2px; }

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