/* Reused from the existing App consent banner. */
    /* Cookie Banner - Left Aligned */
    .cookie-banner {
      position: fixed;
      bottom: 24px;
      left: 24px;
      width: 380px;
      /* Slightly smaller for better fit */
      background: #221F1D;
      /* Elevated Surface */
      border: 1px solid #3A3531;
      /* Border Primary */
      border-radius: 12px;
      padding: 24px;
      box-shadow: 0 10px 40px rgba(0, 0, 0, 0.8);
      z-index: 9999;
      display: none;
      font-family: 'Inter', sans-serif;
      animation: slideUp 0.3s ease-out;
    }

    @keyframes slideUp {
      from {
        transform: translateY(20px);
        opacity: 0;
      }

      to {
        transform: translateY(0);
        opacity: 1;
      }
    }

    .cookie-title {
      font-family: 'Lora', serif;
      font-size: 22px;
      color: #F5F1EB;
      margin-bottom: 8px;
      font-weight: 600;
    }

    .cookie-desc {
      font-size: 14px;
      color: #B8AFA5;
      line-height: 1.5;
      margin-bottom: 20px;
    }

    .cookie-desc a {
      color: #CC785C;
      text-decoration: underline;
    }

    .cookie-actions {
      display: flex;
      flex-direction: column;
      gap: 10px;
    }

    .btn-cookie {
      width: 100%;
      padding: 10px;
      border-radius: 6px;
      font-size: 14px;
      font-weight: 500;
      cursor: pointer;
      transition: 0.2s;
    }

    .btn-cookie-outline {
      background: transparent;
      border: 1px solid #3A3531;
      color: #F5F1EB;
    }

    .btn-cookie-outline:hover {
      border-color: #CC785C;
      color: #CC785C;
    }

    .btn-cookie-solid {
      background: #CC785C;
      border: none;
      color: #FFFFFF;
      font-weight: 600;
    }

    .btn-cookie-solid:hover {
      background: #B86B4F;
    }

    .cookie-row {
      display: flex;
      gap: 10px;
    }

    .cookie-preferences {
      display: none;
    }

    .cookie-panel {
      display: flex;
      flex-direction: column;
      gap: 16px;
      margin-bottom: 16px;
    }

    .cookie-category {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 16px;
    }

    .cookie-category + .cookie-category {
      border-top: 1px solid #3A3531;
      padding-top: 12px;
      margin-top: 12px;
    }

    .cookie-category-title {
      color: #F5F1EB;
      font-weight: 600;
      font-size: 15px;
    }

    .cookie-category-desc {
      color: #B8AFA5;
      font-size: 13px;
      margin-top: 4px;
      line-height: 1.4;
    }

    .cookie-required-badge {
      font-size: 12px;
      text-transform: uppercase;
      letter-spacing: 0.04em;
      color: #B8AFA5;
      border: 1px solid #3A3531;
      padding: 3px 8px;
      border-radius: 999px;
      white-space: nowrap;
    }

    .toggle-switch {
      border: none;
      background: none;
      display: flex;
      align-items: center;
      gap: 8px;
      cursor: pointer;
      color: #B8AFA5;
      font-size: 13px;
      padding: 0;
    }

    .toggle-track {
      width: 42px;
      height: 24px;
      border-radius: 999px;
      background: #2F2B28;
      border: 1px solid #3A3531;
      position: relative;
      transition: background 0.2s ease, border-color 0.2s ease;
    }

    .toggle-thumb {
      width: 18px;
      height: 18px;
      border-radius: 50%;
      background: #F5F1EB;
      position: absolute;
      top: 2px;
      left: 3px;
      transition: transform 0.2s ease;
    }

    .toggle-switch.on .toggle-track {
      background: #CC785C;
      border-color: #CC785C;
    }

    .toggle-switch.on .toggle-thumb {
      transform: translateX(16px);
    }

    .toggle-status {
      color: #B8AFA5;
    }

    @media (max-width: 480px) {
      .cookie-banner,
      .cookie-preferences {
        width: calc(100% - 32px);
        left: 16px;
        right: 16px;
      }
    }
