body {
    background-color: #f8f4f0;
    font-family: 'Segoe UI', sans-serif;
    color: #663d29;
  }

  .container {
    max-width: 1200px;
    margin-top: 3rem;
  }

  h1.page-heading {
    text-align: center;
    font-size: 2.25rem;
    font-weight: bold;
    margin-bottom: 2rem;
    color: #663d29;
  }

  .card-view {
    background-color: #fffaf3;
    border: 1px solid #f3e2c9;
    border-radius: 0.75rem;
    box-shadow: 0 0 12px rgba(102, 61, 41, 0.1);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    padding: 1.5rem;
    min-height: 480px;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  .chart-wrapper {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  canvas {
    width: 100% !important;
    height: 420px !important;
    background: #fff;
    border-radius: 12px;
    padding: 0.5rem;
    box-shadow: 0 2px 10px rgba(102, 61, 41, 0.06);
  }

  .card-view:hover {
    transform: translateY(-5px);
    box-shadow: 0 6px 24px rgba(102, 61, 41, 0.2);
  }

  .skeleton-loader {
    display: block;
    height: 20px;
    width: 100%;
    max-width: 180px;
    margin: 0 auto 1rem auto;
    background: linear-gradient(90deg, #eee, #ddd, #eee);
    border-radius: 8px;
    animation: shimmer 1.5s infinite linear;
  }

  @keyframes shimmer {
    0% { background-position: -400px 0; }
    100% { background-position: 400px 0; }
  }

  .report-note {
    text-align: center;
    font-size: 0.95rem;
    color: #9a674d;
    margin-top: 1rem;
  }

