/* POET Custom Theme for Syncfusion Components */
:root {
    /* POET Official Brand Colors */
    --poet-primary: #BAD09F;           /* POET Light Green - PRIMARY for buttons */
    --poet-primary-dark: #9AB882;      /* Darker shade of light green */
    --poet-primary-light: #C8DDB0;     /* Lighter shade */
    --poet-dark-green: #488C77;        /* POET Dark Green - for accents */
    --poet-secondary: #073653;         /* POET Dark Blue */
    --poet-accent: #BAD09F;            /* POET Light Green Accent */
    --poet-success: #BAD09F;           /* Same as primary light green */
    --poet-error: #dc3545;             /* Bootstrap danger red */
    --poet-warning: #ffc107;           /* Bootstrap warning */
    --poet-info: #0dcaf0;              /* Bootstrap info */
    
    /* POET Gray Scale */
    --poet-gray-50: #f8f9fa;
    --poet-gray-100: #f5f5f5;
    --poet-gray-200: #e9ecef;
    --poet-gray-300: #dee2e6;
    --poet-gray-400: #ced4da;
    --poet-gray-500: #adb5bd;
    --poet-gray-600: #6c757d;
    --poet-gray-700: #495057;
    --poet-gray-800: #343a40;
    --poet-gray-900: #212529;
}

/* ===== SYNCFUSION BUTTON OVERRIDES ===== */

/* Primary Buttons - POET Light Green */
.e-btn.e-primary,
.e-css.e-btn.e-primary {
    background-color: var(--poet-primary) !important;
    border-color: var(--poet-primary) !important;
    color: var(--poet-secondary) !important;
    font-weight: 500;
}

.e-btn.e-primary:hover,
.e-css.e-btn.e-primary:hover {
    background-color: var(--poet-primary-dark) !important;
    border-color: var(--poet-primary-dark) !important;
}

.e-btn.e-primary:active,
.e-css.e-btn.e-primary:active,
.e-btn.e-primary:focus,
.e-css.e-btn.e-primary:focus {
    background-color: var(--poet-primary-dark) !important;
    border-color: var(--poet-dark-green) !important;
    box-shadow: 0 0 0 0.2rem rgba(186, 208, 159, 0.5) !important;
}

/* Success Buttons - Same as Primary */
.e-btn.e-success,
.e-css.e-btn.e-success {
    background-color: var(--poet-success) !important;
    border-color: var(--poet-success) !important;
    color: var(--poet-secondary) !important;
    font-weight: 500;
}

.e-btn.e-success:hover {
    background-color: var(--poet-primary-dark) !important;
}

/* Delete/Danger Buttons */
.e-btn.e-danger,
.e-css.e-btn.e-danger {
    background-color: var(--poet-error) !important;
    border-color: var(--poet-error) !important;
    color: white !important;
}

.e-btn.e-danger:hover {
    background-color: #c82333 !important;
}

/* Cancel Buttons */
.e-btn.e-flat,
.e-css.e-btn.e-flat {
    color: var(--poet-gray-700) !important;
    border: 1px solid var(--poet-gray-400) !important;
}

.e-btn.e-flat:hover {
    background-color: var(--poet-gray-100) !important;
}

/* ===== SYNCFUSION DROPDOWN OVERRIDES ===== */

/* Dropdown focus state */
.e-dropdownbase.e-input-group.e-control-wrapper:not(.e-disabled) .e-input-group-icon:hover,
.e-dropdownbase.e-input-group.e-control-wrapper.e-input-focus .e-input-group-icon {
    color: var(--poet-dark-green) !important;
}

.e-dropdownbase.e-input-group.e-control-wrapper.e-input-focus {
    border-color: var(--poet-primary) !important;
    box-shadow: 0 0 0 0.2rem rgba(186, 208, 159, 0.25) !important;
}

/* Dropdown selected item */
.e-dropdownbase .e-list-item.e-active {
    background-color: var(--poet-primary-light) !important;
    color: var(--poet-secondary) !important;
}

.e-dropdownbase .e-list-item:hover {
    background-color: var(--poet-gray-100) !important;
}

/* ===== SYNCFUSION INPUT OVERRIDES ===== */

/* DEFAULT STATE - Increased contrast for empty inputs */
.e-input-group.e-control-wrapper,
.e-float-input.e-control-wrapper,
.e-textbox,
.e-input-group input.e-input,
.e-float-input input.e-input {
    border-color: var(--poet-gray-500) !important;
    border-width: 1.5px !important;
    background-color: white !important;
}

/* Text inputs, numeric inputs, textareas - FOCUS STATE */
.e-input-group.e-control-wrapper.e-input-focus,
.e-float-input.e-control-wrapper.e-input-focus {
    border-color: var(--poet-primary) !important;
    border-width: 2px !important;
    box-shadow: 0 0 0 0.2rem rgba(186, 208, 159, 0.25) !important;
}

/* HOVER STATE */
.e-input-group:not(.e-disabled):hover,
.e-float-input:not(.e-disabled):hover {
    border-color: var(--poet-primary-dark) !important;
    border-width: 2px !important;
}

/* ===== STANDARD HTML FORM CONTROLS (Bootstrap form-control) ===== */

/* Textarea and other form controls with higher contrast borders */
textarea.form-control,
input.form-control,
select.form-control {
    border-color: var(--poet-gray-500) !important;
    border-width: 1.5px !important;
    background-color: white !important;
}

textarea.form-control:focus,
input.form-control:focus,
select.form-control:focus {
    border-color: var(--poet-primary) !important;
    border-width: 2px !important;
    box-shadow: 0 0 0 0.2rem rgba(186, 208, 159, 0.25) !important;
    outline: none;
}

textarea.form-control:hover,
input.form-control:hover,
select.form-control:hover {
    border-color: var(--poet-primary-dark) !important;
}

/* ===== SYNCFUSION CHECKBOX OVERRIDES ===== */

/* Checked state */
.e-checkbox-wrapper .e-frame.e-check,
.e-css.e-checkbox-wrapper .e-frame.e-check {
    background-color: var(--poet-primary) !important;
    border-color: var(--poet-primary) !important;
    color: var(--poet-secondary) !important;
}

.e-checkbox-wrapper:hover .e-frame.e-check {
    background-color: var(--poet-primary-dark) !important;
}

/* Focus state */
.e-checkbox-wrapper .e-checkbox:focus + .e-frame {
    box-shadow: 0 0 0 0.2rem rgba(186, 208, 159, 0.5) !important;
}

/* ===== SYNCFUSION DIALOG OVERRIDES ===== */

/* Dialog header */
.e-dialog .e-dlg-header-content {
    background: linear-gradient(130deg, rgba(7,54,83,1) 0%, rgba(72,140,119,1) 66%, rgba(186,208,159,1) 100%);
    color: white !important;
    padding: 15px 20px;
}

.e-dialog .e-dlg-header {
    color: white !important;
    font-size: 1.25rem;
    font-weight: 500;
}

/* Dialog close button */
.e-dialog .e-dlg-header-content .e-btn.e-dlg-closeicon-btn {
    color: white !important;
}

.e-dialog .e-dlg-header-content .e-btn.e-dlg-closeicon-btn:hover {
    background-color: rgba(255, 255, 255, 0.1) !important;
}

/* Dialog content */
.e-dialog .e-dlg-content {
    padding: 20px;
}

/* Dialog footer */
.e-dialog .e-footer-content {
    padding: 15px 20px;
    border-top: 1px solid var(--poet-gray-300);
    background-color: var(--poet-gray-50);
}

/* ===== SYNCFUSION GRID OVERRIDES ===== */

/* Grid header */
.e-grid .e-gridheader {
    background: linear-gradient(130deg, rgba(7,54,83,1) 0%, rgba(72,140,119,1) 66%, rgba(186,208,159,1) 100%);
}

.e-grid .e-headercell {
    color: white !important;
    font-weight: 600;
    border-right: 1px solid rgba(255, 255, 255, 0.2) !important;
}

/* Grid selected row */
.e-grid .e-rowcell.e-selectionbackground {
    background-color: var(--poet-primary-light) !important;
}

/* Grid hover */
.e-grid tr.e-row:hover .e-rowcell {
    background-color: var(--poet-gray-100) !important;
}

/* Grid alternating rows */
.e-grid .e-altrow {
    background-color: var(--poet-gray-50) !important;
}

/* ===== SYNCFUSION DATEPICKER OVERRIDES ===== */

/* Calendar header */
.e-calendar .e-header {
    background-color: var(--poet-secondary) !important;
    color: white !important;
}

/* Today button */
.e-calendar .e-footer-container .e-btn.e-today {
    background-color: var(--poet-primary) !important;
    color: var(--poet-secondary) !important;
}

/* Selected date */
.e-calendar .e-selected span.e-day {
    background-color: var(--poet-primary) !important;
    color: var(--poet-secondary) !important;
}

.e-calendar .e-content td:hover span.e-day {
    background-color: var(--poet-primary-light) !important;
}

/* ===== SYNCFUSION TAB OVERRIDES ===== */

/* Tab header */
.e-tab .e-tab-header {
    background: linear-gradient(130deg, rgba(7,54,83,1) 0%, rgba(72,140,119,1) 66%, rgba(186,208,159,1) 100%);
    border-bottom: none;
}

/* Tab items */
.e-tab .e-tab-header .e-toolbar-item .e-tab-text {
    color: rgba(255, 255, 255, 0.7) !important;
}

.e-tab .e-tab-header .e-toolbar-item.e-active .e-tab-text {
    color: white !important;
    font-weight: 600;
}

/* Active tab indicator */
.e-tab .e-tab-header .e-indicator {
    background-color: var(--poet-primary) !important;
}

/* ===== SYNCFUSION TOAST OVERRIDES ===== */

/* Success toast */
.e-toast.e-toast-success {
    background-color: var(--poet-success) !important;
    color: var(--poet-secondary) !important;
}

/* Error toast */
.e-toast.e-toast-danger {
    background-color: var(--poet-error) !important;
}

/* Warning toast */
.e-toast.e-toast-warning {
    background-color: var(--poet-warning) !important;
}

/* Info toast */
.e-toast.e-toast-info {
    background-color: var(--poet-info) !important;
}

/* ===== SYNCFUSION PROGRESS BAR OVERRIDES ===== */

.e-progressbar .e-progress {
    background-color: var(--poet-primary) !important;
}

/* ===== UTILITY CLASSES ===== */

.poet-primary-bg {
    background-color: var(--poet-primary) !important;
}

.poet-secondary-bg {
    background-color: var(--poet-secondary) !important;
}

.poet-dark-green-bg {
    background-color: var(--poet-dark-green) !important;
}

.poet-primary-text {
    color: var(--poet-primary) !important;
}

.poet-secondary-text {
    color: var(--poet-secondary) !important;
}

.poet-dark-green-text {
    color: var(--poet-dark-green) !important;
}
