:root{
    --main-bg: #ffffff;
    --header-bg: #ffffff;
    --header-text: #0f172a;
    --nav-bg: #ffffff;
    --menu-bg: #ffffff;
    --menu-text: #318401;
    --menu-text-muted: #64748b;
    --menu-hover-bg: #f3f8ee;
    --menu-hover-text: #1f7a00;
    --menu-active-bg: #318401;
    --menu-active-text: #ffffff;
    --menu-border: #e5eaf0;
     --ant-box-shadow-tertiary: 0 1px 2px 0 rgba(0,0,0,.03),
                                0 1px 6px -1px rgba(0,0,0,.02),
                                0 2px 4px 0 rgba(0,0,0,.02);
  }
.ant-menu.ant-menu-dark .ant-menu-submenu-title .ant-menu-submenu-arrow::after, .ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow::after, .ant-menu.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow::after, .ant-menu.ant-menu-dark .ant-menu-submenu-title .ant-menu-submenu-arrow::before, .ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow::before, .ant-menu.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow::before
{
    background: #225d00 !important;
}
  .ant-layout-header {
    color: rgba(0, 0, 0, 0.85);
    line-height: 64px;
    background: var(--main-bg) !important;
}

.app-header .header-trigger,
  .app-header .trigger {
    color: #1f7a00 !important;
    border-bottom: none !important;
    line-height: 0 !important;
  }
.ant-menu-dark .ant-menu-item-selected .ant-menu-item-icon, .ant-menu-dark .ant-menu-item-selected .anticon {
    color: #fff !important;
}
  /* Sider */
  .ant-layout-sider {
    background: var(--nav-bg) !important;
    border-right: 1px solid var(--menu-border);
  }
  .ant-layout,
  .ant-layout-content {
    background: var(--main-bg) !important;
  }

  /* Header */
  .ant-layout-header,
  .ant-layout-header .ant-typography,
  .ant-layout-header .anticon,
  .ant-layout-header a,
  .ant-layout-header .ant-btn-link {
    color: var(--header-text) !important;
  }

  /* Menu base */
  .ant-menu.ant-menu-dark,
  .ant-menu-dark .ant-menu-sub,
  .ant-menu.ant-menu-dark .ant-menu-sub,
  .ant-menu {
    background: var(--menu-bg) !important;
    color: var(--menu-text) !important;
  }

  /* Item default */
  .ant-menu-item,
  .ant-menu-submenu-title,
  .ant-menu-dark .ant-menu-item,
  .ant-menu-dark .ant-menu-submenu-title {
    color: var(--menu-text) !important;
  }
.ant-menu-dark .ant-menu-item, .ant-menu-dark .ant-menu-item-group-title, .ant-menu-dark .ant-menu-item > a, .ant-menu-dark .ant-menu-item > span > a {
    color: var(--menu-text) !important;
  }
  /* Hover */
  .ant-menu-item:hover,
  .ant-menu-submenu-title:hover,
  .ant-menu-dark .ant-menu-item:hover,
  .ant-menu-dark .ant-menu-submenu-title:hover {
    background: var(--menu-hover-bg) !important;
    color: var(--menu-hover-text) !important;
  }

  /* Selected */
  .ant-menu-item-selected,
  .ant-menu-dark.ant-menu-dark:not(.ant-menu-horizontal) .ant-menu-item-selected {
    background: var(--menu-active-bg) !important;
    color: var(--menu-active-text) !important;
  }

  /* Icon follows text */
  /* .ant-menu-item .anticon,
  .ant-menu-submenu-title .anticon,
  .ant-menu-dark .ant-menu-item .anticon,
  .ant-menu-dark .ant-menu-submenu-title .anticon {
    color: #318401 !important;
  } */
/* ===== HEADER ===== */
.app-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 64px;
    color: var(--header-text);
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
}
.validation-message {
    color: red;
}
.header-left {
    display: flex;
    align-items: center;
}
.form-action-bar {
    margin-top: 24px !important;
    text-align: right;
}
.app-title {
    font-size: 16px;
    font-weight: 600;
    margin-left: 12px;
}

.header-right {
    display: flex;
    align-items: center;
    gap: 8px;
}
.header-right .header-user {
    color: var(--header-text);
}

.header-right a {
    color: var(--header-text);
}

.header-right a:hover {
    color: #1f7a00;
}
.ant-table {
    overflow-x: auto;
}
.filter-row {
    row-gap: 16px; /* vertical spacing between wrapped rows */
}
.ant-table-cell {
    white-space: nowrap;
}
/* ===== SIDEBAR LOGO ===== */
.logo {
    height: 58px;
    margin: 0px;
    border-radius: 6px;
    background: transparent;
    color: #1f7a00;
    border: none;
    font-size: 18px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ===== CONTENT ===== */
.app-content {
    margin: 16px;
    background: var(--main-bg);
}

.page-container {
    background: white;
    padding: 24px;
    border-radius: 6px;
    min-height: calc(100vh - 160px);
    box-shadow: 0 1px 4px rgba(0,0,0,0.06);
}

/* ===== MENU ===== */
.ant-menu-item {
    margin: 6px 0 !important;
}

.trigger {
    font-size: 18px;
    cursor: pointer;
}

.trigger:hover {
        color: #1f7a00;
    }


.login-container {
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f5f6f8;
}

.login-card {
    width: 360px;
    padding: 24px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    border-radius: 6px;
}

@media (max-width: 768px) {
    .app-header {
        padding: 0 12px;
        height: auto;
        flex-wrap: wrap;
        gap: 8px;
    }

    .header-left {
        flex: 1 1 auto;
    }

    .app-title {
        font-size: 14px;
    }

    .header-right {
        flex: 1 1 auto;
        justify-content: flex-end;
        flex-wrap: wrap;
        gap: 6px;
    }

    .app-content {
        margin: 12px;
    }

    .page-container {
        padding: 16px;
        min-height: auto;
    }

    .ant-card {
        overflow-x: auto;
    }

    .ant-table {
        min-width: 600px;
    }
}

@media (max-width: 480px) {
    .app-header {
        padding: 0 8px;
    }

    .app-title {
        display: none;
    }

    .header-user {
        font-size: 12px;
    }

    .app-content {
        margin: 8px;
    }

    .page-container {
        padding: 12px;
    }
}
