/* Olymp Brand Theme for AntDesign Blazor */

:root {
    /* Primary Colors - Dress Blues */
    --ant-primary-color: #102541;
    --ant-primary-color-hover: #1a3a5c;
    --ant-primary-color-active: #0a1a2e;
    --ant-primary-color-outline: rgba(16, 37, 65, 0.2);
    --ant-primary-1: #e6eaf0;
    --ant-primary-2: #c2cdd9;
    --ant-primary-3: #9dafc2;
    --ant-primary-4: #7992ab;
    --ant-primary-5: #547494;
    --ant-primary-6: #102541;
    --ant-primary-7: #0e2039;
    --ant-primary-8: #0c1a30;
    --ant-primary-9: #0a1528;
    --ant-primary-10: #080f1f;

    /* Secondary Color - Blue Horizon */
    --ant-info-color: #5C647D;
    --ant-info-color-hover: #6e7790;
    --ant-info-color-active: #4a516a;

    /* Success Color - using Warm Sand tones */
    --ant-success-color: #52c41a;
    --ant-success-color-hover: #73d13d;
    --ant-success-color-active: #389e0d;

    /* Warning Color - Warm Sand */
    --ant-warning-color: #C0AF96;
    --ant-warning-color-hover: #d4c7b3;
    --ant-warning-color-active: #a89578;

    /* Error Color */
    --ant-error-color: #ff4d4f;
    --ant-error-color-hover: #ff7875;
    --ant-error-color-active: #d9363e;

    /* Background Colors - Cloud Dancer */
    --ant-body-background: #F6F3EC;
    --ant-component-background: #ffffff;
    --ant-layout-body-background: #F6F3EC;
    --ant-layout-header-background: #102541;
    --ant-layout-sider-background: #102541;

    /* Text Colors */
    --ant-text-color: #102541;
    --ant-text-color-secondary: #5C647D;
    --ant-heading-color: #102541;

    /* Border Colors */
    --ant-border-color-base: #d9d9d9;
    --ant-border-color-split: rgba(16, 37, 65, 0.1);

    /* Font Family - Arial */
    --ant-font-family: Arial, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;

    /* Border Radius */
    --ant-border-radius-base: 6px;
    --ant-border-radius-sm: 4px;
}

/* Apply font family globally */
body,
.ant-typography,
.ant-btn,
.ant-input,
.ant-select,
.ant-menu,
.ant-table,
.ant-card,
.ant-modal,
.ant-form,
.ant-dropdown {
    font-family: Arial, "Segoe UI", Roboto, "Helvetica Neue", sans-serif !important;
}

/* Primary Button Styling */
.ant-btn-primary {
    background-color: #102541 !important;
    border-color: #102541 !important;
}

.ant-btn-primary:hover,
.ant-btn-primary:focus {
    background-color: #1a3a5c !important;
    border-color: #1a3a5c !important;
}

.ant-btn-primary:active {
    background-color: #0a1a2e !important;
    border-color: #0a1a2e !important;
}

/* Link styling */
a {
    color: #102541;
}

a:hover {
    color: #5C647D;
}

/* Menu Styling */
.ant-menu-dark {
    background: #102541 !important;
}

.ant-menu-dark .ant-menu-item-selected {
    background-color: #5C647D !important;
}

.ant-menu-dark .ant-menu-item:hover,
.ant-menu-dark .ant-menu-submenu-title:hover {
    background-color: rgba(92, 100, 125, 0.5) !important;
}

.ant-menu-dark .ant-menu-sub {
    background: #0a1a2e !important;
}

/* Layout Sider */
.ant-layout-sider {
    background: #102541 !important;
}

.ant-layout-sider-trigger {
    background: #0a1a2e !important;
}

/* Card Styling */
.ant-card {
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(16, 37, 65, 0.08);
}

.ant-card-head {
    border-bottom-color: rgba(16, 37, 65, 0.1);
}

/* Table Styling */
.ant-table-thead > tr > th {
    background: #F6F3EC !important;
    color: #102541 !important;
    font-weight: 600;
}

.ant-table-tbody > tr:hover > td {
    background: rgba(192, 175, 150, 0.15) !important;
}

/* Input Focus */
.ant-input:focus,
.ant-input-focused,
.ant-input-affix-wrapper:focus,
.ant-input-affix-wrapper-focused {
    border-color: #102541 !important;
    box-shadow: 0 0 0 2px rgba(16, 37, 65, 0.2) !important;
}

/* Select Focus */
.ant-select-focused .ant-select-selector,
.ant-select-selector:focus {
    border-color: #102541 !important;
    box-shadow: 0 0 0 2px rgba(16, 37, 65, 0.2) !important;
}

/* Checkbox & Radio */
.ant-checkbox-checked .ant-checkbox-inner {
    background-color: #102541 !important;
    border-color: #102541 !important;
}

.ant-radio-checked .ant-radio-inner {
    border-color: #102541 !important;
}

.ant-radio-checked .ant-radio-inner::after {
    background-color: #102541 !important;
}

/* Switch */
.ant-switch-checked {
    background-color: #102541 !important;
}

/* Tabs */
.ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn {
    color: #102541 !important;
}

.ant-tabs-ink-bar {
    background: #102541 !important;
}

/* Pagination */
.ant-pagination-item-active {
    border-color: #102541 !important;
}

.ant-pagination-item-active a {
    color: #102541 !important;
}

/* Spin */
.ant-spin-dot-item {
    background-color: #102541 !important;
}

/* Progress */
.ant-progress-bg {
    background-color: #102541 !important;
}

/* Tag - Custom brand colors */
.ant-tag-olymp-primary {
    background-color: rgba(16, 37, 65, 0.1);
    border-color: #102541;
    color: #102541;
}

.ant-tag-olymp-secondary {
    background-color: rgba(92, 100, 125, 0.1);
    border-color: #5C647D;
    color: #5C647D;
}

.ant-tag-olymp-accent {
    background-color: rgba(192, 175, 150, 0.2);
    border-color: #C0AF96;
    color: #102541;
}

/* Alert Styling */
.ant-alert-info {
    background-color: rgba(92, 100, 125, 0.1);
    border-color: #5C647D;
}

/* Breadcrumb */
.ant-breadcrumb a:hover {
    color: #5C647D !important;
}

/* Steps */
.ant-steps-item-process .ant-steps-item-icon {
    background-color: #102541 !important;
    border-color: #102541 !important;
}

.ant-steps-item-finish .ant-steps-item-icon {
    border-color: #102541 !important;
}

.ant-steps-item-finish .ant-steps-item-icon > .ant-steps-icon {
    color: #102541 !important;
}

/* Timeline */
.ant-timeline-item-head-blue {
    color: #102541 !important;
    border-color: #102541 !important;
}

/* Statistic */
.ant-statistic-title {
    color: #5C647D !important;
}

.ant-statistic-content {
    color: #102541 !important;
}

/* Page Header */
.ant-page-header {
    background: transparent;
}

.ant-page-header-heading-title {
    color: #102541 !important;
}

/* Result */
.ant-result-title {
    color: #102541 !important;
}

.ant-result-subtitle {
    color: #5C647D !important;
}

/* Empty */
.ant-empty-description {
    color: #5C647D !important;
}

/* Scrollbar Styling */
::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

::-webkit-scrollbar-track {
    background: #F6F3EC;
}

::-webkit-scrollbar-thumb {
    background: #C0AF96;
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: #5C647D;
}
