/**
 * Alpha Costoware — front UI polish (forms, alerts, tables, inner pages)
 * Loaded after theme CSS.
 */
:root {
   --alpha-accent: #c45c26;
   --alpha-accent-hover: #a34d1f;
   --alpha-accent-soft: rgba(196, 92, 38, 0.12);
   --alpha-ink: #1a1a1a;
   --alpha-muted: #5c5650;
   --alpha-line: rgba(0, 0, 0, 0.08);
   --alpha-radius: 16px;
   --alpha-radius-sm: 12px;
   --alpha-shadow: 0 8px 32px rgba(26, 18, 12, 0.08);
   --alpha-shadow-hover: 0 16px 48px rgba(26, 18, 12, 0.12);
   /* Vendor login / OTP — reference palette */
   --alpha-auth-cream: #faf9f6;
   --alpha-auth-peach: #f5e6d8;
   --alpha-auth-peach-deep: #edd5c5;
   --alpha-sienna: #a0522d;
   --alpha-sienna-mid: #b8653a;
   --alpha-sienna-dark: #7a3d20;
   --alpha-charcoal: #333333;
   --alpha-text-gray: #666666;
}

/* ---- Page canvas ---- */
body.alpha-front .page-content {
   background: linear-gradient(180deg, var(--alpha-auth-cream) 0%, #f3eee6 40%, #faf9f6 100%);
   min-height: 42vh;
}

body.alpha-front .page-content.about-us {
   padding-bottom: 3rem;
}

/* ---- Title bar (inner pages) ---- */
body.alpha-front .pbmit-title-bar-wrapper .pbmit-tbar-title {
   letter-spacing: 0.02em;
   text-shadow: 0 2px 24px rgba(0, 0, 0, 0.25);
}

body.alpha-front .pbmit-breadcrumb-inner a:hover {
   color: var(--alpha-accent);
}

/* ---- Alerts ---- */
body.alpha-front .page-content .alert {
   border: none;
   border-radius: var(--alpha-radius-sm);
   padding: 1rem 1.25rem;
   box-shadow: var(--alpha-shadow);
   border-left: 4px solid;
}

body.alpha-front .page-content .alert-success {
   background: #ecf8f1;
   border-left-color: #1e7e4e;
   color: #0d3d24;
}

body.alpha-front .page-content .alert-danger {
   background: #fdf0f0;
   border-left-color: #c53030;
   color: #5c1a1a;
}

/* ---- Cards & forms ---- */
body.alpha-front .alpha-ui-card,
body.alpha-front .page-content .card.border-0.shadow-sm {
   border-radius: var(--alpha-radius) !important;
   box-shadow: var(--alpha-shadow) !important;
   border: 1px solid var(--alpha-line) !important;
   background: #fff;
   overflow: hidden;
   transition: box-shadow 0.25s ease, transform 0.2s ease;
}

body.alpha-front .alpha-ui-card:hover,
body.alpha-front .page-content .card.border-0.shadow-sm:hover {
   box-shadow: var(--alpha-shadow-hover) !important;
}

body.alpha-front .page-content .form-label {
   font-weight: 600;
   color: var(--alpha-ink);
   font-size: 0.9rem;
   margin-bottom: 0.4rem;
}

body.alpha-front .page-content .form-control,
body.alpha-front .page-content .form-select {
   border-radius: 10px;
   border-color: #ddd8d0;
   padding: 0.65rem 1rem;
   transition: border-color 0.2s, box-shadow 0.2s;
}

body.alpha-front .page-content .form-control:focus,
body.alpha-front .page-content .form-select:focus {
   border-color: var(--alpha-accent);
   box-shadow: 0 0 0 3px var(--alpha-accent-soft);
}

body.alpha-front .page-content .btn-primary {
   background: linear-gradient(135deg, var(--alpha-accent) 0%, #d4723a 100%);
   border: none;
   border-radius: 10px;
   font-weight: 600;
   letter-spacing: 0.03em;
   padding: 0.65rem 1.25rem;
   box-shadow: 0 4px 14px rgba(196, 92, 38, 0.35);
   transition: transform 0.15s ease, box-shadow 0.2s ease, filter 0.2s ease;
}

body.alpha-front .page-content .btn-primary:hover {
   background: linear-gradient(135deg, var(--alpha-accent-hover) 0%, var(--alpha-accent) 100%);
   filter: brightness(1.02);
   transform: translateY(-1px);
   box-shadow: 0 6px 20px rgba(196, 92, 38, 0.4);
}

body.alpha-front .page-content .btn-danger {
   border-radius: 10px;
   font-weight: 600;
}

body.alpha-front .page-content .btn-outline-secondary {
   border-radius: 10px;
   border-color: #c4beb6;
   color: var(--alpha-muted);
}

body.alpha-front .page-content .btn-outline-secondary:hover {
   border-color: var(--alpha-accent);
   color: var(--alpha-accent);
   background: var(--alpha-accent-soft);
}

/* ---- Auth pages (vendor login + OTP) ---- */
body.alpha-front .alpha-auth-layout {
   position: relative;
   padding-top: 0.35rem;
}

body.alpha-front .alpha-auth-layout::before {
   content: "";
   display: block;
   width: 72px;
   height: 3px;
   margin: 0 auto 1.5rem;
   background: linear-gradient(90deg, transparent, var(--alpha-sienna-dark), var(--alpha-sienna-mid), var(--alpha-sienna), transparent);
   border-radius: 3px;
   box-shadow: 0 1px 4px rgba(160, 82, 45, 0.25);
}

body.alpha-front .alpha-auth-page--vendor-login.alpha-auth-layout::before {
   display: none;
}

body.alpha-front .alpha-auth-page--vendor-login.alpha-auth-layout {
   padding-top: 0.5rem;
}

body.alpha-front .alpha-auth-hero {
   text-align: center;
   margin-bottom: 2.25rem;
   display: flex;
   flex-direction: column;
   align-items: center;
}

body.alpha-front .alpha-auth-hero .alpha-auth-kicker,
body.alpha-front .alpha-auth-hero .alpha-auth-title,
body.alpha-front .alpha-auth-hero .alpha-auth-sub {
   text-align: center;
   width: 100%;
}

body.alpha-front .alpha-auth-hero .alpha-auth-sub {
   max-width: 22rem;
   margin-left: auto;
   margin-right: auto;
}

body.alpha-front .alpha-auth-icon-wrap {
   width: 80px;
   height: 80px;
   margin: 0 auto 1.35rem;
   border-radius: 50%;
   background: linear-gradient(165deg, #fffefb 0%, var(--alpha-auth-peach) 45%, var(--alpha-auth-peach-deep) 100%);
   border: 1px solid rgba(160, 82, 45, 0.28);
   box-shadow:
      0 12px 32px rgba(160, 82, 45, 0.14),
      0 4px 12px rgba(160, 82, 45, 0.08),
      inset 0 1px 0 rgba(255, 255, 255, 0.95);
   display: flex;
   align-items: center;
   justify-content: center;
}

body.alpha-front .alpha-auth-icon-wrap .fa {
   font-size: 1.9rem;
   color: var(--alpha-sienna-dark);
   filter: drop-shadow(0 1px 0 rgba(255, 255, 255, 0.5));
}

body.alpha-front .alpha-auth-kicker {
   margin: 0 0 1.1rem;
   line-height: 1.3;
}

body.alpha-front .alpha-auth-kicker-inner {
   display: none;
   font-family: inherit;
   font-size: 0.7rem;
   font-weight: 700;
   letter-spacing: 0.2em;
   text-transform: uppercase;
   color: var(--alpha-sienna-dark);
   padding: 0.5rem 1.25rem;
   background: linear-gradient(180deg, var(--alpha-auth-peach) 0%, #ebd4c4 100%);
   border: 1px solid rgba(160, 82, 45, 0.45);
   border-radius: 999px;
   box-shadow:
      0 2px 6px rgba(160, 82, 45, 0.1),
      inset 0 1px 0 rgba(255, 255, 255, 0.7);
}

body.alpha-front .alpha-auth-title {
   font-size: clamp(1.8rem, 4.5vw, 2.4rem);
   font-weight: 800;
   line-height: 1.2;
   letter-spacing: -0.02em;
   margin: 0 0 1.1rem;
}

body.alpha-front .alpha-auth-title .alpha-auth-title-accent {
   color: var(--alpha-sienna);
   text-shadow: 0 1px 0 rgba(255, 255, 255, 0.4);
   background: none;
   -webkit-text-fill-color: unset;
   background-clip: unset;
   -webkit-background-clip: unset;
}

body.alpha-front .alpha-auth-title .alpha-auth-title-rest {
   color: var(--alpha-charcoal);
   font-weight: 800;
}

body.alpha-front .alpha-auth-sub {
   font-size: 1rem;
   font-weight: 400;
   line-height: 1.7;
   color: var(--alpha-text-gray);
   max-width: 22rem;
   margin: 0 auto;
   text-align: center !important;
}

body.alpha-front .alpha-auth-intro {
   width: 100%;
   max-width: 26rem;
   margin: 0 auto;
}

body.alpha-front .alpha-auth-intro > .alpha-auth-sub:not(.alpha-auth-sub--after-otp) {
   margin-bottom: 0.35rem;
}

body.alpha-front .alpha-auth-sub--after-otp {
   margin-top: 0.9rem;
   margin-bottom: 0.5rem !important;
   max-width: 26rem;
}

body.alpha-front .alpha-auth-brand-names {
   list-style: none;
   padding: 0;
   margin: 0 auto;
   max-width: 26rem;
   text-align: center !important;
   font-size: 1rem;
   font-weight: 600;
   line-height: 1.65;
   color: var(--alpha-charcoal);
}

body.alpha-front .alpha-auth-brand-names li + li {
   margin-top: 0.35rem;
}

body.alpha-front .alpha-auth-mobile-pill {
   display: inline-block;
   margin-top: 0.65rem;
   padding: 0.45rem 1.2rem;
   background: linear-gradient(180deg, var(--alpha-auth-peach) 0%, #e8d0be 100%);
   border: 1px solid rgba(160, 82, 45, 0.35);
   border-radius: 999px;
   font-weight: 700;
   color: var(--alpha-sienna-dark);
   font-size: 0.95rem;
   letter-spacing: 0.04em;
   box-shadow: 0 2px 8px rgba(160, 82, 45, 0.08);
}

body.alpha-front .alpha-auth-card {
   position: relative;
   padding-top: 1.85rem !important;
   padding-bottom: 1.5rem !important;
   overflow: hidden;
   box-shadow:
      var(--alpha-shadow),
      inset 0 -4px 0 0 var(--alpha-sienna) !important;
}

body.alpha-front .alpha-auth-card::before {
   content: "";
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   height: 4px;
   background: linear-gradient(90deg, var(--alpha-sienna-dark), var(--alpha-sienna-mid), #d4a574, var(--alpha-sienna-mid), var(--alpha-sienna-dark));
   opacity: 1;
}

/* ---- Vendor login: unified professional card ---- */
body.alpha-front .alpha-auth-card--vendor-unified {
   padding-top: 0 !important;
   padding-bottom: 0 !important;
   border-radius: 20px !important;
   box-shadow:
      0 24px 56px rgba(26, 18, 12, 0.07),
      0 10px 28px rgba(160, 82, 45, 0.07),
      inset 0 -4px 0 0 var(--alpha-sienna) !important;
}

body.alpha-front .alpha-auth-vendor-card__brands {
   padding: 1.35rem 1.25rem 1.2rem;
   background: linear-gradient(180deg, #f5f2ec 0%, #faf8f5 45%, #fff 100%);
   border-bottom: 1px solid rgba(160, 82, 45, 0.1);
}

body.alpha-front .alpha-auth-vendor-card__brands-inner {
   display: flex;
   flex-wrap: wrap;
   align-items: center;
   justify-content: center;
   gap: 1rem 1.35rem;
}

body.alpha-front .alpha-auth-vendor-card__brand-rule {
   align-self: stretch;
   width: 1px;
   min-height: 2.75rem;
   background: linear-gradient(180deg, transparent, rgba(160, 82, 45, 0.2), transparent);
}

body.alpha-front .alpha-auth-vendor-card__main {
   padding: 1.45rem 1.35rem 0.15rem;
}

body.alpha-front .alpha-auth-vendor-card__title-icon {
   width: 56px;
   height: 56px;
   margin: 0 auto 0.8rem;
   border-radius: 50%;
   background: linear-gradient(165deg, #fffefb 0%, var(--alpha-auth-peach) 45%, var(--alpha-auth-peach-deep) 100%);
   border: 1px solid rgba(160, 82, 45, 0.22);
   box-shadow:
      0 10px 26px rgba(160, 82, 45, 0.12),
      inset 0 1px 0 rgba(255, 255, 255, 0.9);
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--alpha-sienna-dark);
   font-size: 1.35rem;
}

body.alpha-front .alpha-auth-title--in-card {
   margin: 0 0 0.35rem;
   font-size: clamp(1.55rem, 4vw, 2rem);
}

body.alpha-front .alpha-auth-vendor-card__eyebrow {
   margin: 0 0 1.2rem;
   font-size: 0.78rem;
   font-weight: 600;
   letter-spacing: 0.1em;
   text-transform: uppercase;
   color: rgba(92, 86, 80, 0.9);
   text-align: center !important;
}

body.alpha-front .alpha-auth-vendor-info {
   margin-top: 0.15rem;
}

body.alpha-front .alpha-auth-vendor-info .alpha-auth-intro--in-card {
   max-width: none;
   width: 100%;
   margin: 0;
   padding: 1.15rem 1.1rem 1.3rem;
   background: linear-gradient(155deg, rgba(245, 228, 212, 0.5) 0%, rgba(255, 252, 249, 0.97) 50%, #fff 100%);
   border: 1px solid rgba(160, 82, 45, 0.14);
   border-radius: 14px;
   box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

body.alpha-front .alpha-auth-vendor-info .alpha-auth-sub {
   max-width: none;
   font-size: 0.95rem;
   line-height: 1.65;
}

body.alpha-front .alpha-auth-vendor-info .alpha-auth-intro > .alpha-auth-sub:not(.alpha-auth-sub--after-otp) {
   margin-bottom: 0.3rem;
}

body.alpha-front .alpha-auth-vendor-info .alpha-auth-sub--after-otp {
   margin-top: 0.7rem !important;
   margin-bottom: 0.6rem !important;
}

body.alpha-front .alpha-auth-brand-tiles {
   list-style: none;
   padding: 0;
   margin: 0;
   display: flex;
   flex-direction: column;
   align-items: center;
   gap: 0.45rem;
}

body.alpha-front .alpha-auth-brand-tile {
   display: inline-block;
   padding: 0.42rem 1.05rem;
   font-size: 0.88rem;
   font-weight: 700;
   line-height: 1.35;
   text-align: center;
   color: var(--alpha-sienna-dark);
   background: rgba(255, 255, 255, 0.82);
   border: 1px solid rgba(160, 82, 45, 0.2);
   border-radius: 999px;
   box-shadow: 0 2px 10px rgba(160, 82, 45, 0.06);
}

body.alpha-front .alpha-auth-vendor-card__form-block {
   padding: 0 1.35rem 1.65rem;
   margin-top: 0.35rem;
}

body.alpha-front .alpha-auth-card--vendor-unified .alpha-auth-submit-btn {
   font-weight: 700;
   letter-spacing: 0.03em;
   border: none;
   box-shadow: 0 4px 16px rgba(196, 92, 38, 0.32);
   transition:
      transform 0.15s ease,
      box-shadow 0.15s ease;
}

body.alpha-front .alpha-auth-card--vendor-unified .alpha-auth-submit-btn:hover {
   transform: translateY(-1px);
   box-shadow: 0 6px 22px rgba(196, 92, 38, 0.38);
}

@media (min-width: 768px) {
   body.alpha-front .alpha-auth-vendor-card__main {
      padding-left: 1.85rem;
      padding-right: 1.85rem;
   }

   body.alpha-front .alpha-auth-vendor-card__form-block {
      padding-left: 1.85rem;
      padding-right: 1.85rem;
      padding-bottom: 1.85rem;
   }

   body.alpha-front .alpha-auth-vendor-card__brands {
      padding-left: 1.85rem;
      padding-right: 1.85rem;
   }
}

@media (max-width: 480px) {
   body.alpha-front .alpha-auth-vendor-card__brand-rule {
      display: none;
   }
}

/* Partner / brand logos above mobile field (vendor login card) */
body.alpha-front .alpha-auth-card-logos-inner {
   display: flex;
   flex-wrap: wrap;
   justify-content: center;
   align-items: center;
   gap: 1rem 1.5rem;
}

body.alpha-front .alpha-auth-brand-logo {
   display: block;
   width: auto;
   max-width: min(46vw, 220px);
   height: auto;
   max-height: 52px;
   object-fit: contain;
}

body.alpha-front .alpha-auth-brand-logo--agri {
   max-height: 48px;
   max-width: min(52vw, 240px);
   border-radius: 8px;
}

body.alpha-front .alpha-auth-brand-logo--costoware {
   max-height: 56px;
   max-width: min(44vw, 200px);
}

@media (min-width: 400px) {
   body.alpha-front .alpha-auth-brand-logo--agri {
      max-height: 52px;
   }

   body.alpha-front .alpha-auth-brand-logo--costoware {
      max-height: 60px;
   }
}

body.alpha-front .alpha-auth-card .btn-primary.btn-lg {
   padding-top: 0.85rem;
   padding-bottom: 0.85rem;
   font-size: 1.05rem;
   border-radius: 12px;
}

/* Mobile input — clear border & focus (vendor login) */
body.alpha-front .alpha-auth-card .alpha-auth-label {
   font-size: 0.95rem;
   font-weight: 700;
   color: var(--alpha-ink);
   margin-bottom: 0.5rem;
}

body.alpha-front .alpha-auth-card .alpha-auth-input-mobile {
   border: 2px solid #c4b8aa !important;
   background: #fdfcfa !important;
   border-radius: 12px !important;
   padding: 0.85rem 1.1rem !important;
   font-size: 1.1rem !important;
   font-weight: 500;
   color: var(--alpha-ink);
   box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05);
   transition:
      border-color 0.2s ease,
      box-shadow 0.2s ease,
      background 0.2s ease;
}

body.alpha-front .alpha-auth-card .alpha-auth-input-mobile:hover {
   border-color: #a89888 !important;
   background: #fff !important;
}

body.alpha-front .alpha-auth-card .alpha-auth-input-mobile:focus {
   border-color: var(--alpha-sienna) !important;
   background: #fff !important;
   box-shadow:
      inset 0 1px 2px rgba(0, 0, 0, 0.04),
      0 0 0 4px rgba(160, 82, 45, 0.15) !important;
}

body.alpha-front .alpha-auth-card .alpha-auth-input-mobile::placeholder {
   color: #8a8178;
   font-weight: 400;
   opacity: 1;
}

/* Legacy class if still used elsewhere */
body.alpha-front .alpha-auth-intro .pbmit-title {
   font-size: 1.65rem;
   font-weight: 700;
   color: var(--alpha-ink);
}

body.alpha-front .alpha-auth-intro .pbmit-heading-desc {
   color: var(--alpha-muted);
   max-width: 28rem;
   margin-left: auto;
   margin-right: auto;
}

/* ---- OTP boxes ---- */
body.alpha-front .alpha-otp-digit {
   width: 3.25rem !important;
   max-width: 3.25rem !important;
   height: 3.5rem !important;
   font-size: 1.75rem !important;
   font-weight: 700 !important;
   border-radius: 12px !important;
   border: 2px solid #c4b8aa !important;
   background: #fdfcfa !important;
   line-height: 1.2 !important;
   box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05) !important;
   transition: border-color 0.2s, box-shadow 0.2s, background 0.2s !important;
}

body.alpha-front .alpha-otp-digit:hover {
   border-color: #a89888 !important;
   background: #fff !important;
}

body.alpha-front .alpha-otp-digit:focus {
   border-color: var(--alpha-sienna) !important;
   background: #fff !important;
   box-shadow:
      inset 0 1px 2px rgba(0, 0, 0, 0.04),
      0 0 0 4px rgba(160, 82, 45, 0.15) !important;
}

body.alpha-front .alpha-otp-resend {
   text-align: center;
}

body.alpha-front .alpha-otp-resend-btn {
   font-weight: 600;
   font-size: 0.95rem;
   text-decoration: none;
   color: var(--alpha-accent) !important;
}

body.alpha-front .alpha-otp-resend-btn:hover:not(:disabled) {
   color: var(--alpha-accent-hover) !important;
   text-decoration: underline;
}

body.alpha-front .alpha-otp-resend-btn:disabled {
   opacity: 0.55;
   cursor: not-allowed;
   pointer-events: none;
}

body.alpha-front .alpha-otp-resend-hint {
   display: inline;
   vertical-align: baseline;
}

/* ---- Vendor / dashboard ---- */
body.alpha-front .alpha-meta-bar {
   display: flex;
   flex-wrap: wrap;
   align-items: center;
   justify-content: space-between;
   gap: 0.75rem;
   padding: 1rem 1.25rem;
   background: #fff;
   border-radius: var(--alpha-radius-sm);
   border: 1px solid var(--alpha-line);
   box-shadow: var(--alpha-shadow);
   margin-bottom: 1.5rem;
}

body.alpha-front .alpha-meta-bar strong {
   color: var(--alpha-accent);
}

body.alpha-front .alpha-vendor-logout-btn {
   min-height: 2.65rem;
   padding: 0.55rem 1.4rem;
   border-radius: 999px;
   font-weight: 600;
   font-size: 0.9375rem;
   line-height: 1.2;
   letter-spacing: 0.02em;
   border-width: 1px;
   border-color: #c9bfb4;
   color: #3a4252;
   background: #fff;
   box-shadow:
      0 1px 0 rgba(255, 255, 255, 0.95),
      0 2px 10px rgba(26, 18, 12, 0.07);
   transition:
      border-color 0.2s ease,
      box-shadow 0.2s ease,
      color 0.2s ease,
      background 0.2s ease;
}

body.alpha-front .alpha-vendor-logout-btn:hover {
   border-color: #a89888;
   color: #252b38;
   background: #faf8f5;
   box-shadow:
      0 2px 14px rgba(26, 18, 12, 0.1),
      0 0 0 1px rgba(196, 92, 38, 0.12);
}

body.alpha-front .alpha-vendor-logout-btn:focus-visible {
   box-shadow:
      0 2px 14px rgba(26, 18, 12, 0.1),
      0 0 0 3px var(--alpha-accent-soft);
}

body.alpha-front .alpha-picker-card {
   background: linear-gradient(135deg, #fff 0%, #fdfbf8 100%);
   border-radius: var(--alpha-radius) !important;
   border: 1px solid var(--alpha-line) !important;
   box-shadow: var(--alpha-shadow) !important;
   padding: 1.35rem 1.5rem !important;
   margin-bottom: 1.75rem;
}

body.alpha-front .alpha-vendor-panel {
   background: #fff;
   border-radius: var(--alpha-radius);
   border: 1px solid var(--alpha-line);
   box-shadow: var(--alpha-shadow);
   padding: 1.5rem 1.35rem 2rem;
   margin-bottom: 2rem;
   transition: box-shadow 0.25s ease;
}

body.alpha-front .alpha-vendor-panel:hover {
   box-shadow: var(--alpha-shadow-hover);
}

body.alpha-front .alpha-portal-section-title {
   font-size: 1.35rem;
   font-weight: 800;
   color: var(--alpha-ink);
   margin: 2rem 0 1rem;
   padding-bottom: 0.5rem;
   border-bottom: 2px solid var(--alpha-accent-soft);
}

body.alpha-front .alpha-portal-section-title:first-of-type {
   margin-top: 0.5rem;
}

body.alpha-front .alpha-portal-section-title--agri {
   border-bottom-color: rgba(39, 174, 96, 0.35);
   color: #1e6b3a;
}

body.alpha-front .alpha-vendor-panel.alpha-agri-panel {
   border-left: 4px solid #27ae60;
}

body.alpha-front .alpha-vendor-head {
   display: flex;
   align-items: center;
   gap: 0.5rem;
   font-size: 1.15rem;
   font-weight: 700;
   color: var(--alpha-ink);
   padding-bottom: 0.75rem;
   margin-bottom: 1rem;
   border-bottom: 2px solid var(--alpha-accent-soft);
}

body.alpha-front .alpha-vendor-head .fa {
   color: var(--alpha-accent);
}

body.alpha-front .alpha-subsection-title {
   font-size: 1.1rem;
   font-weight: 700;
   color: var(--alpha-ink);
   margin-top: 0.5rem;
   margin-bottom: 0.75rem;
   display: flex;
   align-items: center;
   gap: 0.5rem;
}

body.alpha-front .alpha-subsection-title::before {
   content: "";
   width: 4px;
   height: 1.1em;
   background: linear-gradient(180deg, var(--alpha-accent), #e8a878);
   border-radius: 2px;
}

body.alpha-front .alpha-table-shell {
   border-radius: var(--alpha-radius-sm);
   overflow: hidden;
   border: 1px solid var(--alpha-line);
   box-shadow: 0 2px 12px rgba(0, 0, 0, 0.04);
   background: #fff;
}

body.alpha-front .alpha-table-shell .table {
   margin-bottom: 0;
}

body.alpha-front .alpha-table-shell thead th {
   background: linear-gradient(180deg, #f5f1eb 0%, #ebe6df 100%);
   color: var(--alpha-ink);
   font-weight: 700;
   font-size: 0.8rem;
   text-transform: uppercase;
   letter-spacing: 0.04em;
   border-bottom: 2px solid var(--alpha-accent-soft) !important;
   white-space: nowrap;
   padding: 0.85rem 0.65rem;
}

body.alpha-front .alpha-table-shell tbody td {
   vertical-align: middle;
   padding: 0.65rem 0.55rem;
   font-size: 0.9rem;
}

body.alpha-front .alpha-table-shell tbody tr:nth-child(even) {
   background: #faf9f7;
}

body.alpha-front .alpha-table-shell tbody tr:hover {
   background: rgba(196, 92, 38, 0.06);
}

body.alpha-front .alpha-empty-hint {
   padding: 1.25rem 1.5rem;
   border-radius: var(--alpha-radius-sm);
   background: #fff8f0;
   border: 1px dashed var(--alpha-accent);
   color: #7a3d15;
   font-weight: 600;
}

/* ---- In-content links ---- */
body.alpha-front .page-content a:not(.btn):not(.pbmit-btn) {
   color: var(--alpha-accent);
   text-decoration: none;
   font-weight: 600;
}

body.alpha-front .page-content a:not(.btn):not(.pbmit-btn):hover {
   text-decoration: underline;
   color: var(--alpha-accent-hover);
}

/* ---- Section spacing ---- */
body.alpha-front .page-content .section-md {
   padding-top: 2.5rem;
   padding-bottom: 2.5rem;
}

@media (max-width: 767px) {
   body.alpha-front .alpha-otp-digit {
      width: 2.75rem !important;
      max-width: 2.75rem !important;
      height: 3rem !important;
      font-size: 1.4rem !important;
   }
}

/* Full-bleed custom pages bring their own sections */
body.alpha-front .alpha-credential-page,
body.alpha-front .alpha-portfolio-page {
   background: transparent;
}

/* Blog / article inner */
body.alpha-front .pbmit-blog-classic-inner,
body.alpha-front .post.blog-classic {
   border-radius: var(--alpha-radius);
   overflow: hidden;
}

body.alpha-front .pbmit-blog-classic-inner {
   padding: 1.5rem;
   background: #fff;
   border: 1px solid var(--alpha-line);
   box-shadow: var(--alpha-shadow);
}

body.alpha-front .sidebar .widget {
   background: #fff;
   border-radius: var(--alpha-radius-sm);
   padding: 1.25rem 1.35rem;
   border: 1px solid var(--alpha-line);
   box-shadow: var(--alpha-shadow);
   margin-bottom: 1.25rem;
}

body.alpha-front .sidebar .widget-title {
   font-size: 1.05rem;
   font-weight: 700;
   margin-bottom: 1rem;
   padding-bottom: 0.5rem;
   border-bottom: 2px solid var(--alpha-accent-soft);
   color: var(--alpha-ink);
}
