
    body {
      font-family: Inter, sans-serif;
    }

    .tool-card {
      background: #fff;
      border: 1px solid #e5e7eb;
      border-radius: 0.75rem;
      padding: 1.5rem;
      box-shadow: 0 3px 12px rgba(0, 0, 0, .04);
    }

    #canvas {
      max-width: 100%;
      height: auto;
      border: 1px solid #e5e7eb;
      border-radius: 0.5rem;
    }

    .action-buttons {
      display: flex;
      flex-direction: column;
      gap: 0.75rem;
    }

    .clear-text-row {
      display: flex;
      justify-content: flex-end;
      margin-top: 0.5rem;
    }

    .clear-text-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 0.3rem;
      min-height: 1.75rem;
      padding: 0.25rem 0.65rem;
      border: 1px solid #d1d5db;
      border-radius: 9999px;
      background: #fff;
      color: #4b5563;
      font-size: 0.7rem;
      font-weight: 600;
      line-height: 1;
      transition: background-color 0.2s, border-color 0.2s, color 0.2s;
      white-space: nowrap;
    }

    .clear-text-icon {
      font-size: 0.85rem;
      line-height: 1;
    }

    .clear-text-btn:hover {
      background: #f9fafb;
      border-color: #9ca3af;
      color: #111827;
    }

    .clear-text-btn:disabled {
      opacity: 0.5;
      cursor: not-allowed;
    }

    .color-picker-wrapper {
      display: flex;
      align-items: center;
      gap: 0.75rem;
    }

    .color-preview {
      width: 40px;
      height: 40px;
      border-radius: 0.5rem;
      border: 2px solid #e5e7eb;
      cursor: pointer;
      transition: transform 0.2s;
    }

    .color-preview:hover {
      transform: scale(1.05);
    }

    input[type="color"] {
      opacity: 0;
      position: absolute;
      pointer-events: none;
    }

    .badge {
      display: inline-flex;
      align-items: center;
      gap: 0.5rem;
      background: #10b981;
      color: white;
      padding: 0.5rem 1rem;
      border-radius: 9999px;
      font-size: 0.875rem;
      font-weight: 600;
      margin-bottom: 1rem;
    }

    @media (max-width: 640px) {
      .tool-card {
        padding: 1rem;
      }

      .clear-text-btn {
        align-self: flex-end;
      }
    }
