/*
Theme Name: SafetyPPE Knowledge Bridge
Theme URI: https://safetyppe.com/
Author: SafetyPPE / HostDrift
Author URI: https://safetyppe.com/
Description: ธีมบทความ SafetyPPE ที่ใช้ Header และ Footer จากเว็บหลัก Laravel พร้อมหน้า Blog เรียบหรูแบบ Apple โดยใช้ Tailwind CSS ที่คอมไพล์ไว้ในธีม
Version: 1.2.3
Requires at least: 6.2
Requires PHP: 8.1
Text Domain: safetyppe-knowledge-bridge
*/
/*! tailwindcss v4.1.10 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, utilities;
@layer theme {
  :root, :host {
    --tw-color-black: #000;
    --tw-color-white: #fff;
    --tw-spacing: 0.25rem;
    --tw-container-2xl: 42rem;
    --tw-container-3xl: 48rem;
    --tw-text-xs: 0.75rem;
    --tw-text-xs--line-height: calc(1 / 0.75);
    --tw-text-sm: 0.875rem;
    --tw-text-sm--line-height: calc(1.25 / 0.875);
    --tw-text-base: 1rem;
    --tw-text-base--line-height: calc(1.5 / 1);
    --tw-text-xl: 1.25rem;
    --tw-text-xl--line-height: calc(1.75 / 1.25);
    --tw-text-2xl: 1.5rem;
    --tw-text-2xl--line-height: calc(2 / 1.5);
    --tw-text-3xl: 1.875rem;
    --tw-text-3xl--line-height: calc(2.25 / 1.875);
    --tw-font-weight-semibold: 600;
    --tw-radius-xl: 0.75rem;
    --tw-radius-2xl: 1rem;
    --tw-ease-out: cubic-bezier(0, 0, 0.2, 1);
    --tw-default-transition-duration: 150ms;
    --tw-default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  }
}
@layer utilities {
  .tw\:pointer-events-none {
    pointer-events: none;
  }
  .tw\:sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
  }
  .tw\:absolute {
    position: absolute;
  }
  .tw\:relative {
    position: relative;
  }
  .tw\:top-1 {
    top: calc(var(--tw-spacing) * 1);
  }
  .tw\:top-1\/2 {
    top: calc(1/2 * 100%);
  }
  .tw\:right-1 {
    right: calc(var(--tw-spacing) * 1);
  }
  .tw\:left-4 {
    left: calc(var(--tw-spacing) * 4);
  }
  .tw\:z-10 {
    z-index: 10;
  }
  .tw\:m-0 {
    margin: calc(var(--tw-spacing) * 0);
  }
  .tw\:mx-auto {
    margin-inline: auto;
  }
  .tw\:mt-2 {
    margin-top: calc(var(--tw-spacing) * 2);
  }
  .tw\:mt-3 {
    margin-top: calc(var(--tw-spacing) * 3);
  }
  .tw\:mt-4 {
    margin-top: calc(var(--tw-spacing) * 4);
  }
  .tw\:mt-5 {
    margin-top: calc(var(--tw-spacing) * 5);
  }
  .tw\:mt-9 {
    margin-top: calc(var(--tw-spacing) * 9);
  }
  .tw\:mb-0 {
    margin-bottom: calc(var(--tw-spacing) * 0);
  }
  .tw\:block {
    display: block;
  }
  .tw\:flex {
    display: flex;
  }
  .tw\:grid {
    display: grid;
  }
  .tw\:inline-flex {
    display: inline-flex;
  }
  .tw\:aspect-\[16\/10\] {
    aspect-ratio: 16/10;
  }
  .tw\:h-1 {
    height: calc(var(--tw-spacing) * 1);
  }
  .tw\:h-4 {
    height: calc(var(--tw-spacing) * 4);
  }
  .tw\:h-5 {
    height: calc(var(--tw-spacing) * 5);
  }
  .tw\:h-12 {
    height: calc(var(--tw-spacing) * 12);
  }
  .tw\:h-14 {
    height: calc(var(--tw-spacing) * 14);
  }
  .tw\:h-full {
    height: 100%;
  }
  .tw\:w-1 {
    width: calc(var(--tw-spacing) * 1);
  }
  .tw\:w-4 {
    width: calc(var(--tw-spacing) * 4);
  }
  .tw\:w-5 {
    width: calc(var(--tw-spacing) * 5);
  }
  .tw\:w-full {
    width: 100%;
  }
  .tw\:max-w-2xl {
    max-width: var(--tw-container-2xl);
  }
  .tw\:max-w-3xl {
    max-width: var(--tw-container-3xl);
  }
  .tw\:max-w-\[1180px\] {
    max-width: 1180px;
  }
  .tw\:min-w-0 {
    min-width: calc(var(--tw-spacing) * 0);
  }
  .tw\:flex-1 {
    flex: 1;
  }
  .tw\:-translate-y-1\/2 {
    --tw-translate-y: calc(calc(1/2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .tw\:grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .tw\:flex-col {
    flex-direction: column;
  }
  .tw\:flex-wrap {
    flex-wrap: wrap;
  }
  .tw\:items-center {
    align-items: center;
  }
  .tw\:items-end {
    align-items: flex-end;
  }
  .tw\:justify-between {
    justify-content: space-between;
  }
  .tw\:justify-center {
    justify-content: center;
  }
  .tw\:gap-2 {
    gap: calc(var(--tw-spacing) * 2);
  }
  .tw\:gap-6 {
    gap: calc(var(--tw-spacing) * 6);
  }
  .tw\:gap-7 {
    gap: calc(var(--tw-spacing) * 7);
  }
  .tw\:gap-x-3 {
    column-gap: calc(var(--tw-spacing) * 3);
  }
  .tw\:gap-x-6 {
    column-gap: calc(var(--tw-spacing) * 6);
  }
  .tw\:gap-y-1 {
    row-gap: calc(var(--tw-spacing) * 1);
  }
  .tw\:gap-y-12 {
    row-gap: calc(var(--tw-spacing) * 12);
  }
  .tw\:self-start {
    align-self: flex-start;
  }
  .tw\:overflow-hidden {
    overflow: hidden;
  }
  .tw\:rounded-2xl {
    border-radius: var(--tw-radius-2xl);
  }
  .tw\:rounded-\[24px\] {
    border-radius: 24px;
  }
  .tw\:rounded-\[28px\] {
    border-radius: 28px;
  }
  .tw\:rounded-full {
    border-radius: calc(infinity * 1px);
  }
  .tw\:rounded-xl {
    border-radius: var(--tw-radius-xl);
  }
  .tw\:border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .tw\:border-t {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }
  .tw\:border-black\/10 {
    border-color: var(--tw-color-black);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--tw-color-black) 10%, transparent);
    }
  }
  .tw\:bg-\[\#1d1d1f\] {
    background-color: #1d1d1f;
  }
  .tw\:bg-\[\#c7c7cc\] {
    background-color: #c7c7cc;
  }
  .tw\:bg-\[\#f5f5f7\] {
    background-color: #f5f5f7;
  }
  .tw\:bg-white {
    background-color: var(--tw-color-white);
  }
  .tw\:object-cover {
    object-fit: cover;
  }
  .tw\:px-5 {
    padding-inline: calc(var(--tw-spacing) * 5);
  }
  .tw\:px-6 {
    padding-inline: calc(var(--tw-spacing) * 6);
  }
  .tw\:py-10 {
    padding-block: calc(var(--tw-spacing) * 10);
  }
  .tw\:py-14 {
    padding-block: calc(var(--tw-spacing) * 14);
  }
  .tw\:pt-5 {
    padding-top: calc(var(--tw-spacing) * 5);
  }
  .tw\:pt-8 {
    padding-top: calc(var(--tw-spacing) * 8);
  }
  .tw\:pt-10 {
    padding-top: calc(var(--tw-spacing) * 10);
  }
  .tw\:pt-14 {
    padding-top: calc(var(--tw-spacing) * 14);
  }
  .tw\:pr-28 {
    padding-right: calc(var(--tw-spacing) * 28);
  }
  .tw\:pb-16 {
    padding-bottom: calc(var(--tw-spacing) * 16);
  }
  .tw\:pb-20 {
    padding-bottom: calc(var(--tw-spacing) * 20);
  }
  .tw\:pl-12 {
    padding-left: calc(var(--tw-spacing) * 12);
  }
  .tw\:text-center {
    text-align: center;
  }
  .tw\:text-2xl {
    font-size: var(--tw-text-2xl);
    line-height: var(--tw-leading, var(--tw-text-2xl--line-height));
  }
  .tw\:text-base {
    font-size: var(--tw-text-base);
    line-height: var(--tw-leading, var(--tw-text-base--line-height));
  }
  .tw\:text-sm {
    font-size: var(--tw-text-sm);
    line-height: var(--tw-leading, var(--tw-text-sm--line-height));
  }
  .tw\:text-xl {
    font-size: var(--tw-text-xl);
    line-height: var(--tw-leading, var(--tw-text-xl--line-height));
  }
  .tw\:text-xs {
    font-size: var(--tw-text-xs);
    line-height: var(--tw-leading, var(--tw-text-xs--line-height));
  }
  .tw\:text-\[0\.98rem\] {
    font-size: 0.98rem;
  }
  .tw\:text-\[1\.35rem\] {
    font-size: 1.35rem;
  }
  .tw\:text-\[clamp\(2\.35rem\,4\.5vw\,3\.5rem\)\] {
    font-size: clamp(2.35rem, 4.5vw, 3.5rem);
  }
  .tw\:leading-7 {
    --tw-leading: calc(var(--tw-spacing) * 7);
    line-height: calc(var(--tw-spacing) * 7);
  }
  .tw\:leading-8 {
    --tw-leading: calc(var(--tw-spacing) * 8);
    line-height: calc(var(--tw-spacing) * 8);
  }
  .tw\:leading-\[1\.1\] {
    --tw-leading: 1.1;
    line-height: 1.1;
  }
  .tw\:leading-\[1\.42\] {
    --tw-leading: 1.42;
    line-height: 1.42;
  }
  .tw\:font-semibold {
    --tw-font-weight: var(--tw-font-weight-semibold);
    font-weight: var(--tw-font-weight-semibold);
  }
  .tw\:tracking-\[-0\.02em\] {
    --tw-tracking: -0.02em;
    letter-spacing: -0.02em;
  }
  .tw\:tracking-\[-0\.025em\] {
    --tw-tracking: -0.025em;
    letter-spacing: -0.025em;
  }
  .tw\:tracking-\[-0\.045em\] {
    --tw-tracking: -0.045em;
    letter-spacing: -0.045em;
  }
  .tw\:tracking-\[0\.14em\] {
    --tw-tracking: 0.14em;
    letter-spacing: 0.14em;
  }
  .tw\:text-\[\#1d1d1f\] {
    color: #1d1d1f;
  }
  .tw\:text-\[\#6e6e73\] {
    color: #6e6e73;
  }
  .tw\:text-\[\#86868b\] {
    color: #86868b;
  }
  .tw\:text-\[\#f26722\] {
    color: #f26722;
  }
  .tw\:text-white {
    color: var(--tw-color-white);
  }
  .tw\:uppercase {
    text-transform: uppercase;
  }
  .tw\:no-underline {
    text-decoration-line: none;
  }
  .tw\:ring-1 {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .tw\:ring-black\/5 {
    --tw-ring-color: var(--tw-color-black);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--tw-color-black) 5%, transparent);
    }
  }
  .tw\:transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, visibility, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--tw-default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--tw-default-transition-duration));
  }
  .tw\:duration-500 {
    --tw-duration: 500ms;
    transition-duration: 500ms;
  }
  .tw\:ease-out {
    --tw-ease: var(--tw-ease-out);
    transition-timing-function: var(--tw-ease-out);
  }
  .tw\:outline-none {
    --tw-outline-style: none;
    outline-style: none;
  }
  .tw\:group-hover\:translate-x-0\.5 {
    &:is(:where(.tw\:group):hover *) {
      @media (hover: hover) {
        --tw-translate-x: calc(var(--tw-spacing) * 0.5);
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .tw\:group-hover\:scale-\[1\.035\] {
    &:is(:where(.tw\:group):hover *) {
      @media (hover: hover) {
        scale: 1.035;
      }
    }
  }
  .tw\:group-hover\:text-\[\#f26722\] {
    &:is(:where(.tw\:group):hover *) {
      @media (hover: hover) {
        color: #f26722;
      }
    }
  }
  .tw\:placeholder\:text-\[\#86868b\] {
    &::placeholder {
      color: #86868b;
    }
  }
  .tw\:hover\:bg-black {
    &:hover {
      @media (hover: hover) {
        background-color: var(--tw-color-black);
      }
    }
  }
  .tw\:hover\:text-\[\#f26722\] {
    &:hover {
      @media (hover: hover) {
        color: #f26722;
      }
    }
  }
  .tw\:focus\:border-\[\#f26722\]\/60 {
    &:focus {
      border-color: color-mix(in oklab, #f26722 60%, transparent);
    }
  }
  .tw\:focus\:bg-white {
    &:focus {
      background-color: var(--tw-color-white);
    }
  }
  .tw\:focus\:ring-4 {
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .tw\:focus\:ring-\[\#f26722\]\/10 {
    &:focus {
      --tw-ring-color: color-mix(in oklab, #f26722 10%, transparent);
    }
  }
  .tw\:focus\:ring-black\/10 {
    &:focus {
      --tw-ring-color: var(--tw-color-black);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--tw-color-black) 10%, transparent);
      }
    }
  }
  .tw\:focus\:outline-none {
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
  }
  .tw\:md\:grid-cols-2 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .tw\:md\:px-8 {
    @media (width >= 48rem) {
      padding-inline: calc(var(--tw-spacing) * 8);
    }
  }
  .tw\:md\:py-12 {
    @media (width >= 48rem) {
      padding-block: calc(var(--tw-spacing) * 12);
    }
  }
  .tw\:md\:pt-20 {
    @media (width >= 48rem) {
      padding-top: calc(var(--tw-spacing) * 20);
    }
  }
  .tw\:md\:pb-24 {
    @media (width >= 48rem) {
      padding-bottom: calc(var(--tw-spacing) * 24);
    }
  }
  .tw\:md\:text-3xl {
    @media (width >= 48rem) {
      font-size: var(--tw-text-3xl);
      line-height: var(--tw-leading, var(--tw-text-3xl--line-height));
    }
  }
  .tw\:md\:text-\[1\.05rem\] {
    @media (width >= 48rem) {
      font-size: 1.05rem;
    }
  }
  .tw\:lg\:max-w-\[410px\] {
    @media (width >= 64rem) {
      max-width: 410px;
    }
  }
  .tw\:lg\:grid-cols-3 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .tw\:lg\:flex-row {
    @media (width >= 64rem) {
      flex-direction: row;
    }
  }
  .tw\:lg\:items-end {
    @media (width >= 64rem) {
      align-items: flex-end;
    }
  }
  .tw\:lg\:justify-between {
    @media (width >= 64rem) {
      justify-content: space-between;
    }
  }
}
@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-tracking {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-ease {
  syntax: "*";
  inherits: false;
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-duration: initial;
      --tw-ease: initial;
    }
  }
}


/* SafetyPPE Front Blog refinements. */
body.sppe-knowledge-site,
body.sppe-knowledge-site button,
body.sppe-knowledge-site input,
body.sppe-knowledge-site select,
body.sppe-knowledge-site textarea {
  font-family: "Sukhumvit Set", "Thonburi", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", sans-serif !important;
}
body.sppe-knowledge-site {
  background: #fff;
  color: #1d1d1f;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}
.sppe-blog-front a { text-decoration: none; }
.sppe-blog-clamp {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.sppe-blog-placeholder {
  position: relative;
  background:
    radial-gradient(circle at 76% 18%, rgba(242, 103, 34, .18), transparent 29%),
    linear-gradient(145deg, #f5f5f7 0%, #fff 100%);
}
.sppe-blog-placeholder::before,
.sppe-blog-placeholder::after {
  content: "";
  position: absolute;
  border: 1px solid rgba(29, 29, 31, .07);
  border-radius: 999px;
}
.sppe-blog-placeholder::before { width: 180px; height: 180px; right: -54px; bottom: -82px; }
.sppe-blog-placeholder::after { width: 92px; height: 92px; left: -24px; top: -38px; }
.sppe-blog-search input[type="search"] { -webkit-appearance: none; appearance: none; }
.sppe-blog-front .sppe-pagination {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 0;
}
.sppe-blog-front .sppe-pagination .page-numbers {
  display: inline-flex;
  min-width: 42px;
  height: 42px;
  align-items: center;
  justify-content: center;
  padding: 0 14px;
  border: 1px solid rgba(29,29,31,.10);
  border-radius: 999px;
  background: #fff;
  color: #1d1d1f;
  font-size: .875rem;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition: transform 180ms ease, background-color 180ms ease, border-color 180ms ease, color 180ms ease;
}
.sppe-blog-front .sppe-pagination a.page-numbers:hover,
.sppe-blog-front .sppe-pagination .page-numbers.current {
  border-color: #1d1d1f;
  background: #1d1d1f;
  color: #fff;
}
.sppe-blog-front .sppe-pagination a.page-numbers:hover { transform: translateY(-1px); }
.sppe-blog-front .sppe-pagination .page-numbers.dots {
  min-width: 28px;
  padding: 0;
  border-color: transparent;
  background: transparent;
  color: #86868b;
}
.sppe-blog-front .sppe-pagination .prev,
.sppe-blog-front .sppe-pagination .next { padding-inline: 18px; }
@media (max-width: 639px) {
  .sppe-blog-front .sppe-pagination .prev,
  .sppe-blog-front .sppe-pagination .next { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .sppe-blog-front *, .sppe-blog-front *::before, .sppe-blog-front *::after {
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* Compact blog heading: deliberately smaller than the Laravel homepage hero. */
.sppe-blog-front-title {
  font-size: clamp(2.15rem, 4vw, 3rem);
}
