/* @tailwind directives removed: ensure Tailwind CSS is used to process this file */

@layer components {
  fieldset {
    display: block;
    min-width: min-content;
    margin: 0.5rem;
    margin-left: 0.2rem;
    margin-right: 0.2rem;
    border-width: 1px;
    border-style: dashed;
    border-color: #0891b2; /* cyan-600 */
    padding-left: 1.3rem;
    padding-right: 1.3rem;
    padding-top: 0.35em;
    padding-bottom: 0.625em;
  }

  .file-drop {    
    margin-left: auto;
    margin-right: auto;
    margin-top: 1.5rem; /* mt-6 */
    color: #374151; /* text-gray-700 */
    border-width: 0.125rem;
    border-style: dashed;
    border-color: #0891b2; /* border-cyan-600 */
    border-radius: 0.75rem; /* rounded-xl */
    padding: 1.5rem; /* p-6 */
    background-color: #f9fafb; /* bg-gray-50 */
    transition-property: background-color, border-color, color, fill, stroke;
    transition-duration: 300ms;
    text-align: center;
  }

  .file-drop:hover {
    background-color: #e0f2fe; /* cyan-100 */
    border-color: #06b6d4; /* cyan-500 */
    }

  .file-drop.dragging {
    background-color: #f9fafb; /* bg-gray-50 */
    border-color: #67e8f9; /* border-cyan-300 */
  }

  .file-drop p {
    margin: 0;
    margin-bottom: 1rem; /* mb-4 */
    font-size: 1rem; /* text-base */
    color: #4b5563; /* text-gray-600 */
  }

  .fileInfo {
    font-size: 1rem; /* text-base */
    margin-top: 1rem; /* mt-4 */
    margin-bottom: 0.5rem; /* mb-2 */
    color: #4b5563; /* text-gray-600 */
    text-align: center;
  }

  label.button {
    display: inline-block;
    margin-top: 0.5rem; /* mt-2 */
    font-size: 1rem; /* text-base */
    font-weight: 600; /* font-semibold */
    cursor: pointer;
    border-radius: 0.375rem; /* rounded-md */
    padding-left: 1.5rem; /* px-6 */
    padding-right: 1.5rem;
    padding-top: 0.75rem; /* py-3 */
    padding-bottom: 0.75rem;
    transform: translateX(-2%);
    color: #fff; /* text-white */
    background-color: #0891b2; /* bg-cyan-600 */
    transition-property: background-color, border-color, color, fill, stroke;
    transition-duration: 300ms;
    box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1); /* shadow-md */
    text-align: center;
  }

  label.button:hover:not(.disabled) {
    background-color: #06b6d4; /* bg-cyan-500 */
    box-shadow: 0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1); /* shadow-lg */
  }

  label.button.disabled {
    background-color: #d1d5db; /* bg-gray-300 */
    color: #9ca3af; /* text-gray-400 */
    cursor: not-allowed;
    box-shadow: none; /* shadow-none */
  }

  label.button:active:not(.disabled) {
    transform: scale(0.98);
  }

  label.button.secondary {
    background-color: #fff; /* bg-white */
    color: #111827; /* text-gray-900 */
    box-shadow: 0 0.125rem 0.25rem rgba(0,0,0,0.05); /* shadow-[0_0.125rem_0.25rem_rgba(0,0,0,0.05)] */
  }

  label.button.secondary:hover {
    background-color: #164e63; /* bg-cyan-900 */
    color: #fff; /* text-white */
    box-shadow: 0 0.25rem 0.5rem rgba(255,255,255,0.3); /* shadow-[0_0.25rem_0.5rem_rgba(255,255,255,0.3)] */
  }
}
