@import './components/welcome';
@import './components/overview';
@import './components/campaign-tracking';
@import './components/modal';
@import './components/card';
@import './components/recent-donations'; 
@import './components/actions';
@import './components/select-search';

#GFWP_DASHBOARD_VIEW_ROOT {
  font-family: Arial, Helvetica, sans-serif;

  .__monospace {
    font-family: 'Courier New', Courier, monospace
  }

  a {
    text-decoration: none;
    border-bottom: solid 2px;
    font-weight: 500;
    transition: color 0.2s;

    &:hover {
      opacity: .5;
    }
  }
}

/**
 * GiftFlow Dashboard Styles
 */

// .giftflow-dashboard-overview {
//   margin-top: 20px;
// }

// .giftflow-dashboard-grid {
//   display: grid;
//   grid-template-columns: repeat(3, 1fr);
//   gap: 20px;
//   margin: 20px 0;
// }

// .giftflow-widget {
//   background: #fff;
//   border: 1px solid #ccd0d4;
//   border-radius: 8px;
//   box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
//   overflow: hidden;
//   transition: box-shadow 0.2s ease;

//   &.giftflow-widget-actions, &.giftflow-widget-charts {
//     margin-top: 20px;
//   }

//   &.giftflow-widget-campaigns {
//     .giftflow-progress-bar {
//       width: 100%;
//       height: 8px;
//     }
//   }
// }

// .giftflow-widget:hover {
//   box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
// }

// .giftflow-widget-header {
//   background: #f8f9fa;
//   border-bottom: 1px solid #e1e5e9;
//   padding: 10px 15px;
// }

// .giftflow-widget-header h3 {
//   margin: 0;
//   font-size: 16px;
//   font-weight: 600;
//   color: #1d2327;
// }

// .giftflow-widget-content {
//   padding: 15px;
// }

// .giftflow-overview-stats {
//   display: flex;
//   flex-direction: column;
//   gap: 12px;
// }

// .giftflow-stat-item {
//   display: flex;
//   justify-content: space-between;
//   align-items: center;
//   padding: 12px 0;
//   border-bottom: 1px solid #f0f0f1;

//   &.top-donors {
//     flex-direction: column;
//     align-items: flex-start;
//   }
// }

// .giftflow-stat-item:last-child {
//   border-bottom: none;
// }

// .giftflow-stat-item strong {
//   color: #1d2327;
//   font-weight: 600;
//   font-size: 14px;
// }

// .giftflow-stat-item span {
//   color: #50575e;
//   font-size: 15px;
//   font-weight: bold;
// }

// .giftflow-stat-item table {
//   margin-top: 10px;
//   width: 100%;
//   border-collapse: collapse;
//   border: 1px solid #f0f0f1;
  
//   th, td {
//     padding: 8px;
//     text-align: left;
//     border-right: 1px solid #f0f0f1;
//   }

//   th {
//     font-weight: 600;
//     color: #1d2327;
//     background-color: #f8f9fa;
//     border-right: 1px solid #f0f0f1;
//   }

//   td {
//     color: #50575e;
//     border-right: 1px solid #f0f0f1;
//     border-bottom: 1px solid #f0f0f1;
//   }

//   tr:last-child td {
//     border-bottom: none;
//   }

//   tr:hover {
//     background-color: #f8f9fa;
//   }
// }

// .giftflow-stat-campaigns .giftflow-stat-item {
//   border-bottom: none;
// }

// .giftflow-chart-container {
//   position: relative;
//   height: 220px;
//   max-width: 80%;
//   margin: 0 auto;
// }

// .giftflow-chart-container canvas {
//   max-width: 100%;
//   height: auto !important;
//   border-radius: 4px;
// }

// .giftflow-progress-bar {
//   width: 50%;
//   position: relative;
//   background: #f0f0f1;
//   border-radius: 10px;
//   height: 20px;
//   overflow: hidden;
//   margin-top: 5px;
// }

// .giftflow-progress-fill {
//   background: linear-gradient(90deg, #2271b1, #135e96);
//   height: 100%;
//   border-radius: 10px;
//   transition: width 0.3s ease;
//   position: relative;
// }

// .giftflow-progress-text {
//   position: absolute;
//   top: 50%;
//   left: 50%;
//   transform: translate(-50%, -50%);
//   font-size: 12px;
//   font-weight: 600;
//   color: #fff;
//   text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
// }

// .giftflow-campaigns-list {
//   display: flex;
//   flex-direction: column;
//   gap: 8px;
// }

// .giftflow-campaign-item {
//   display: flex;
//   justify-content: space-between;
//   align-items: flex-start;
//   padding: 10px;
//   background: #f8f9fa;
//   border-radius: 6px;
//   border: 1px solid #e1e5e9;
// }

// .giftflow-campaign-info {
//   flex: 1;
// }

// .giftflow-campaign-info a {
//   text-decoration: none;
// }

// .giftflow-campaign-info h4 {
//   margin: 0 0 4px 0;
//   font-size: 13px;
//   font-weight: 500;
//   line-height: 1.2;
//   color: inherit;
//   overflow: hidden;
//   text-overflow: ellipsis;
//   display: -webkit-box;
//   -webkit-line-clamp: 2;
//   line-clamp: 2;
//   -webkit-box-orient: vertical;
// }

// .giftflow-campaign-progress {
//   display: flex;
//   align-items: center;
//   gap: 8px;
//   margin-bottom: 5px;
// }

// .giftflow-campaign-amount {
//   font-size: 13px;
//   font-weight: 500;
//   color: #50575e;
// }

// .giftflow-campaign-percentage {
//   font-size: 12px;
//   color: #4CAF50;
//   font-weight: 600;
// }

// .giftflow-campaign-actions {
//   display: flex;
//   flex-direction: column;
//   gap: 8px;
//   margin-left: 15px;
// }

// .giftflow-donations-list {
//   display: flex;
//   flex-direction: column;
//   gap: 10px;
// }

// .giftflow-donation-item {
//   display: flex;
//   flex-wrap: wrap;
//   justify-content: space-between;
//   align-items: center;
//   padding: 0 0 8px;
//   border-bottom: 1px solid #f0f0f1;
// }

// .giftflow-donation-item .giftflow-donation-info {
//   display: flex;
//   gap: 10px;
//   justify-content: space-between;
//   width: 60%;
// }

// .giftflow-donation-item:last-child {
//   border-bottom: none;
// }

// .giftflow-donation-donor {
//   font-weight: 500;
//   color: #1d2327;
//   min-width: 80px;
// }

// .giftflow-donation-amount {
//   font-weight: 600;
//   color: #50575e;
//   text-align: right;
// }

// .giftflow-donation-campaign {
//   margin-top: 4px;
//   font-size: 13px;
//   line-height: 1.3;
//   color: #50575e;
//   overflow: hidden;
//   text-overflow: ellipsis;
//   display: -webkit-box;
//   -webkit-line-clamp: 1;
//   line-clamp: 1;
//   -webkit-box-orient: vertical;
//   width: 100%;
// }

// .giftflow-donation-campaign a {
//   text-decoration: none;
// }

// .giftflow-donation-date {
//   font-size: 12px;
//   color: #8c8f94;
//   text-align: right;
//   width: 30%;
// }

// .giftflow-charts-container {
//   display: grid;
//   grid-template-columns: 1fr 1fr 1fr;
// }

// .giftflow-chart-item {
//   text-align: center;

//   &:not(:last-child) {
//     padding-right: 25px;
//     border-right: 1px solid #f0f0f1;
//   }

//   &:not(:first-child) {
//     padding-left: 25px;
//   }

//   &.giftflow-chart-item-campaigns {
//     .giftflow-chart-container {
//       height: 280px;
//     }
//   }
// }

// .giftflow-chart-item h3 {
//   margin: 5px 0 15px 0;
//   color: #1d2327;
// }

// .giftflow-chart-item h4 {
//   margin: 0 0 15px 0;
//   font-size: 14px;
//   font-weight: 600;
//   color: #1d2327;
// }

// .giftflow-chart-period-controls {
//   margin-bottom: 20px;
// }

// .giftflow-widget-charts .giftflow-chart-container {
//   max-width: 100%;
// }

// .giftflow-chart-buttons {
//   display: flex;
//   gap: 8px;
//   justify-content: center;
//   margin-bottom: 15px;
// }

// .giftflow-chart-buttons .button {
//   transition: all 0.2s ease;
//   border-radius: 4px;
// }

// .giftflow-chart-buttons .button.active {
//   background: #2196F3;
//   border-color: #2196F3;
//   color: #fff;
// }

// .giftflow-chart-buttons .button:hover {
//   transform: translateY(-1px);
//   box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
// }

// /* Chart Filters */
// .giftflow-chart-filters {
//   display: grid;
//   grid-template-columns: 1fr 120px;
//   gap: 10px;
//   align-items: end;
//   margin-bottom: 10px;
// }
// .giftflow-chart-filters-2 {
//   max-width: 70%;
//   margin: 0 auto;
// }

// .giftflow-filter-group {
//   display: flex;
//   flex-direction: column;
//   align-items: flex-start;
//   gap: 5px;
//   padding: 1px;
//   overflow: hidden;
// }

// .giftflow-filter-group label {
//   font-size: 12px;
//   font-weight: 600;
//   color: #1d2327;
//   margin: 0;
// }

// .giftflow-filter-group .giftflow-form-control {
//   padding: 5px 8px;
//   font-size: 13px;
//   border: 1px solid #ddd;
//   border-radius: 4px;
//   // background: #fff;
// }

// .giftflow-filter-group .giftflow-form-control:focus {
//   border-color: #2271b1;
//   outline: none;
//   box-shadow: 0 0 0 1px #2271b1;
// }


// .giftflow-insights-list {
//   display: flex;
//   flex-direction: column;
//   gap: 15px;
// }

// .giftflow-insight-item {
//   display: flex;
//   justify-content: space-between;
//   align-items: center;
//   padding: 12px 0;
//   border-bottom: 1px solid #f0f0f1;
// }

// .giftflow-insight-item:last-child {
//   border-bottom: none;
// }

// .giftflow-insight-item strong {
//   color: #1d2327;
//   font-weight: 600;
//   font-size: 14px;
// }

// .giftflow-insight-item span {
//   color: #50575e;
//   font-size: 15px;
//   font-weight: bold;
//   text-align: right;
// }

// .giftflow-quick-actions {
//   display: flex;
//   flex-direction: column;
//   gap: 15px;
// }

// .giftflow-action-buttons,
// .giftflow-export-buttons {
//   display: flex;
//   gap: 15px;
//   flex-wrap: wrap;
// }

// .giftflow-action-buttons .button,
// .giftflow-export-buttons .button {
//   display: flex;
//   align-items: center;
//   gap: 6px;
//   text-decoration: none;
//   padding: 4px 20px;
// }

// .giftflow-action-buttons .dashicons,
// .giftflow-export-buttons .dashicons {
//   font-size: 20px;
//   width: 20px;
//   height: 20px;
// }

// /* Export Modal Styles */
// .giftflow-modal {
//   position: fixed;
//   top: 0;
//   left: 0;
//   width: 100%;
//   height: 100%;
//   z-index: 999999;
// }

// .giftflow-modal-overlay {
//   position: absolute;
//   top: 0;
//   left: 0;
//   width: 100%;
//   height: 100%;
//   background: rgba(0, 0, 0, 0.7);
// }

// .giftflow-modal-content {
//   position: relative;
//   background: #fff;
//   border-radius: 8px;
//   box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
//   max-width: 500px;
//   width: 90%;
//   max-height: 90vh;
//   overflow-y: auto;
//   margin: 5vh auto;
//   animation: giftflow-modal-slide-in 0.3s ease-out;
// }

// .giftflow-modal select {
//   max-width: 100%;
// }

// #giftflow-custom-dates {
//   display: grid;
//   grid-template-columns: 1fr 1fr;
//   gap: 20px;
// }

// @keyframes giftflow-modal-slide-in {
//   from {
//     opacity: 0;
//     transform: translateY(-50px);
//   }
//   to {
//     opacity: 1;
//     transform: translateY(0);
//   }
// }

// .giftflow-modal-header {
//   display: flex;
//   justify-content: space-between;
//   align-items: center;
//   padding: 10px 20px;
//   border-bottom: 1px solid #f0f0f1;
//   margin-bottom: 20px;
// }

// .giftflow-modal-header h3 {
//   margin: 0;
//   font-size: 18px;
//   font-weight: 600;
//   color: #1d2327;
// }

// .giftflow-modal-close {
//   background: none;
//   border: none;
//   font-size: 24px;
//   color: #666;
//   cursor: pointer;
//   padding: 0;
//   width: 30px;
//   height: 30px;
//   display: flex;
//   align-items: center;
//   justify-content: center;
//   border-radius: 50%;
//   transition: all 0.2s ease;
// }

// .giftflow-modal-close:hover {
//   background: #f0f0f1;
//   color: #333;
// }

// .giftflow-modal-body {
//   padding: 0 20px;
// }

// .giftflow-modal-footer {
//   display: flex;
//   justify-content: flex-end;
//   gap: 10px;
//   padding: 20px;
//   border-top: 1px solid #f0f0f1;
//   margin-top: 20px;
// }

// .giftflow-modal-footer button[type="button"] {
//   width: auto;
//   display: flex;
//   align-items: center;
//   gap: 4px;
// }

// .giftflow-form-group {
//   margin-bottom: 20px;
// }

// .giftflow-form-group label {
//   display: block;
//   margin-bottom: 8px;
//   font-weight: 600;
//   color: #1d2327;
//   font-size: 14px;
// }

// .giftflow-form-control {
//   width: 100%;
//   padding: 8px 12px;
//   border: 1px solid #ddd;
//   border-radius: 4px;
//   font-size: 14px;
//   transition: border-color 0.2s ease;
// }

// .giftflow-form-control:focus {
//   border-color: #2271b1;
//   outline: none;
//   box-shadow: 0 0 0 1px #2271b1;
// }

// .giftflow-form-group input[type="checkbox"] {
//   margin-right: 8px;
// }

// .giftflow-form-group label:has(input[type="checkbox"]) {
//   display: flex;
//   align-items: center;
//   font-weight: normal;
//   margin-bottom: 0;
// }

// .giftflow-export-btn {
//   transition: all 0.2s ease;
// }

// .giftflow-export-btn:hover {
//   transform: translateY(-1px);
//   box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
// }

// /* Select2 Customization for Export Modal */
// .giftflow-modal .select2-container {
//   width: 100% !important;
// }

// .giftflow-modal .select2-container--default .select2-selection--single {
//   height: 38px;
//   border: 1px solid #ddd;
//   border-radius: 4px;
//   background: #fff;
//   transition: border-color 0.2s ease;
// }

// .giftflow-modal .select2-container--default .select2-selection--single:hover {
//   border-color: #2271b1;
// }

// .giftflow-modal .select2-container--default.select2-container--focus .select2-selection--single {
//   border-color: #2271b1;
//   outline: none;
//   box-shadow: 0 0 0 1px #2271b1;
// }

// .giftflow-modal .select2-container--default .select2-selection--single .select2-selection__rendered {
//   line-height: 36px;
//   padding-left: 12px;
//   color: #1d2327;
//   font-size: 14px;
// }

// .giftflow-modal .select2-container--default .select2-selection--single .select2-selection__placeholder {
//   color: #8c8f94;
//   font-size: 14px;
// }

// .giftflow-modal .select2-container--default .select2-selection--single .select2-selection__arrow {
//   height: 36px;
//   right: 8px;
// }

// .giftflow-modal .select2-container--default .select2-selection--single .select2-selection__clear {
//   color: #666;
//   right: 25px;
//   width: 32px;
//   height: 100%;
//   font-size: 1rem;
// }

// .giftflow-modal .select2-container--default .select2-selection--single .select2-selection__clear:hover {
//   color: #333;
// }

// .giftflow-modal .select2-dropdown {
//   border: 1px solid #ddd;
//   border-radius: 4px;
//   box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
//   z-index: 1000000;
// }

// .giftflow-modal .select2-container--default .select2-results__option {
//   padding: 8px 12px;
//   font-size: 14px;
//   color: #1d2327;
// }

// .giftflow-modal .select2-container--default .select2-results__option--highlighted[aria-selected] {
//   background-color: #2271b1;
//   color: #fff;
// }

// .giftflow-modal .select2-container--default .select2-search--dropdown .select2-search__field {
//   border: 1px solid #ddd;
//   border-radius: 4px;
//   padding: 6px 8px;
//   font-size: 14px;
//   margin: 8px;
//   width: calc(100% - 16px);
// }

// .giftflow-modal .select2-container--default .select2-results__option[aria-selected=true] {
//   background-color: #f0f0f1;
//   color: #1d2327;
// }

// .giftflow-notifications-list {
//   display: flex;
//   flex-direction: column;
//   gap: 12px;
// }

// .giftflow-notification-item {
//   display: flex;
//   align-items: flex-start;
//   gap: 10px;
//   padding: 12px 15px;
//   border-radius: 6px;
//   border-left: 4px solid;
// }

// .giftflow-notification-warning {
//   background: #fef7e0;
//   border-left-color: #dba617;
//   color: #8a6914;
// }

// .giftflow-notification-success {
//   background: #e8f5e8;
//   border-left-color: #00a32a;
//   color: #1e7e34;
// }

// .giftflow-notification-info {
//   background: #e7f3ff;
//   border-left-color: #0073aa;
//   color: #0073aa;
// }

// .giftflow-notification-icon {
//   font-size: 16px;
//   line-height: 1.2;
// }

// .giftflow-notification-message {
//   flex: 1;
//   font-size: 13px;
//   line-height: 1.4;
// }

// /* Settings Tab */
// .giftflow-dashboard-settings {
//   background: #fff;
//   border: 1px solid #ccd0d4;
//   border-radius: 4px;
//   box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
//   padding: 20px;
//   margin-top: 20px;
// }

// .giftflow-dashboard-settings h2 {
//   margin-top: 0;
//   border-bottom: 1px solid #eee;
//   padding-bottom: 10px;
// }

// /* Help Tab */
// .giftflow-dashboard-help {
//   background: #fff;
//   border: 1px solid #ccd0d4;
//   border-radius: 4px;
//   box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
//   padding: 20px;
//   margin-top: 20px;
// }

// .giftflow-dashboard-help h2 {
//   margin-top: 0;
//   border-bottom: 1px solid #eee;
//   padding-bottom: 10px;
// }

// .giftflow-help-section {
//   margin-bottom: 30px;
// }

// .giftflow-help-section h3 {
//   margin-top: 0;
// }

// .giftflow-help-section code {
//   background: #f0f0f1;
//   padding: 3px 5px;
//   border-radius: 3px;
// }

// /* Responsive Adjustments */
// @media screen and (max-width: 1300px) {
//   .giftflow-dashboard-grid,
//   .giftflow-charts-container {
//     grid-template-columns: 1fr;
//   }
//   .giftflow-charts-container {
//     gap: 40px;
//     max-width: 800px;
    
//     .giftflow-chart-item {
//       text-align: center;
    
//       &:not(:last-child) {
//         padding-right: 0;
//         border-right: 0;
//       }
    
//       &:not(:first-child) {
//         padding-left: 0;
//       }
//     }
//   }
// }

// @media screen and (max-width: 782px) {
//   .giftflow-dashboard-grid {
//     gap: 15px;
//   }
  
//   .giftflow-widget-content {
//     padding: 15px;
//   }
  
//   .giftflow-campaign-item {
//     flex-direction: column;
//     align-items: stretch;
//     gap: 10px;
//   }
  
//   .giftflow-campaign-actions {
//     display: none;
//   }
  
//   .giftflow-donation-amount,
//   .giftflow-donation-campaign,
//   .giftflow-donation-date {
//     text-align: left;
//   }
  
//   .giftflow-action-buttons,
//   .giftflow-export-buttons {
//     flex-direction: column;
//     gap: 5px;
//   }
  
//   .giftflow-action-buttons .button,
//   .giftflow-export-buttons .button {
//     justify-content: center;
//   }
// }

// @media screen and (max-width: 480px) {
  
//   .giftflow-widget-content {
//     padding: 10px 12px;
//   }
  
//   .giftflow-insight-item {
//     flex-direction: column;
//     align-items: flex-start;
//     gap: 5px;
//   }
  
//   .giftflow-chart-container {
//     height: 180px;
//   }
  
//   .giftflow-chart-buttons {
//     flex-wrap: wrap;
//     gap: 6px;
//   }
  
//   .giftflow-chart-buttons .button {
//     font-size: 12px;
//     padding: 4px 8px;
//   }
  
//   .giftflow-modal-content {
//     width: 95%;
//     margin: 2vh auto;
//     max-height: 96vh;
//   }
  
//   .giftflow-modal-header {
//     padding: 15px 15px 0;
//   }
  
//   .giftflow-modal-body {
//     padding: 0 15px;
//   }
  
//   .giftflow-modal-footer {
//     padding: 15px;
//     flex-direction: column;
//     gap: 8px;
//   }
  
//   .giftflow-modal-footer .button {
//     width: 100%;
//     justify-content: center;
//   }
  
//   .giftflow-chart-filters {
//     grid-template-columns: 1fr;
//     gap: 10px;
//   }
  
//   .giftflow-stat-item span {
//     font-size: 14px;
//   }
//   .giftflow-stat-item table th, 
//   .giftflow-stat-item table td {
//     padding: 5px;
//   }
// } 

// .giftflow-widget-charts .select2-container {
//   z-index: 9999 !important;
// }
// .giftflow-widget-charts .select2-dropdown {
//   z-index: 9999 !important;
// }
// .giftflow-widget-charts .select2-selection--single {
//   height: 38px !important;
//   border: 1px solid #ddd !important;
//   border-radius: 4px !important;
//   padding: 0 12px !important;
//   display: flex !important;
//   align-items: center !important;
// }
// .giftflow-widget-charts .select2-selection__rendered {
//   color: #555 !important;
//   line-height: 36px !important;
//   padding: 0 !important;
// }
// .giftflow-widget-charts .select2-selection__arrow {
//   height: 36px !important;
//   top: 1px !important;
// }
// .giftflow-widget-charts .select2-dropdown {
//   border: 1px solid #ddd !important;
//   border-radius: 4px !important;
//   box-shadow: 0 2px 4px rgba(0,0,0,0.1) !important;
// }
// .giftflow-widget-charts .select2-results__option {
//   padding: 8px 12px !important;
//   color: #555 !important;
// }
// .giftflow-widget-charts .select2-results__option--highlighted {
//   background-color: #f0f0f0 !important;
//   color: #333 !important;
// }
// .giftflow-widget-charts .select2-container--default .select2-selection--single .select2-selection__clear {
//   margin-right: 10px;
// }