    body {
      min-height: 100dvh;
      display: flex;
      align-items: center;
      justify-content: center;
      background: #f6f7fb;
    }

    .btn {
      border-radius: 999px;
      font-weight: 600;
      padding: 0.55rem 1.15rem;
      border: none;
      box-shadow: 0 14px 30px -20px rgba(15, 23, 42, 0.55);
      transition: transform .15s ease, box-shadow .15s ease, filter .15s ease;
    }

    .btn:hover {
      transform: translateY(-2px);
      box-shadow: 0 20px 36px -18px rgba(15, 23, 42, 0.55);
    }

    .btn:focus,
    .btn:focus-visible {
      outline: none;
      box-shadow: 0 0 0 4px rgba(250, 204, 21, 0.35), 0 18px 34px -18px rgba(15, 23, 42, 0.5);
    }

    .btn:active {
      transform: translateY(0);
      box-shadow: 0 12px 24px -18px rgba(15, 23, 42, 0.5);
    }

    .btn.disabled,
    .btn:disabled {
      pointer-events: none;
      opacity: .7;
      box-shadow: none;
    }

    .btn-sm {
      padding: 0.38rem 0.8rem;
      font-size: 0.85rem;
    }

    .btn-lg {
      padding: 0.7rem 1.5rem;
      font-size: 1rem;
    }

    .btn-warning {
      background: linear-gradient(135deg, #facc15 0%, #f59e0b 100%);
      color: #1f2937;
      box-shadow: 0 16px 32px -20px rgba(245, 158, 11, 0.7);
    }

    .btn-dark {
      background: linear-gradient(135deg, #111827 0%, #0f172a 100%);
      color: #f8fafc;
    }

    .btn-light {
      background: #f8fafc;
      color: #0f172a;
      border: 1px solid #e2e8f0;
      box-shadow: 0 14px 26px -20px rgba(148, 163, 184, 0.6);
    }

    .btn-outline,
    .btn-outline-light {
      border-radius: 999px;
      border: 1px solid currentColor;
      background: transparent;
      box-shadow: none;
    }

    .btn-outline-light {
      color: #94a3b8;
      border-color: rgba(148, 163, 184, 0.6);
    }

    .btn-outline-light:hover,
    .btn-outline:hover {
      background: rgba(250, 204, 21, 0.12);
      border-color: rgba(250, 204, 21, 0.4);
      color: #0f172a;
      transform: translateY(-2px);
      box-shadow: 0 18px 32px -20px rgba(15, 23, 42, 0.45);
    }
  