.test-atmosphere-preview {
  padding: 20px;
  max-width: 1200px;
  margin: 0 auto;
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;

  .header {
    text-align: center;
    margin-bottom: 30px;
    
    h2 {
      color: #333;
      margin-bottom: 10px;
    }
    
    p {
      color: #666;
      font-size: 14px;
    }
  }

  .controls {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 30px;
    padding: 20px;
    background: #f8f9fa;
    border-radius: 8px;
    
    label {
      font-weight: 500;
      color: #333;
    }
    
    select {
      padding: 8px 12px;
      border: 1px solid #ddd;
      border-radius: 4px;
      background: white;
      min-width: 150px;
    }
    
    button {
      padding: 8px 16px;
      background: #007bff;
      color: white;
      border: none;
      border-radius: 4px;
      cursor: pointer;
      transition: background-color 0.2s;
      
      &:hover:not(:disabled) {
        background: #0056b3;
      }
      
      &:disabled {
        background: #6c757d;
        cursor: not-allowed;
      }
    }
  }

  .loading {
    text-align: center;
    padding: 40px;
    
    .spinner {
      width: 40px;
      height: 40px;
      border: 4px solid #f3f3f3;
      border-top: 4px solid #007bff;
      border-radius: 50%;
      animation: spin 1s linear infinite;
      margin: 0 auto 20px;
    }
    
    p {
      color: #666;
      font-size: 16px;
    }
  }

  .error {
    background: #f8d7da;
    color: #721c24;
    padding: 20px;
    border-radius: 8px;
    border: 1px solid #f5c6cb;
    margin-bottom: 20px;
    
    h3 {
      margin-top: 0;
      margin-bottom: 10px;
    }
  }

  .result {
    background: white;
    border: 1px solid #e9ecef;
    border-radius: 8px;
    padding: 20px;
    
    h3 {
      margin-top: 0;
      margin-bottom: 20px;
      color: #333;
      border-bottom: 2px solid #007bff;
      padding-bottom: 10px;
    }
  }

  .preview-section {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-bottom: 30px;
    
    .preview-image, .thumbnail-image {
      text-align: center;
      
      h4 {
        margin-bottom: 15px;
        color: #333;
      }
      
      img {
        max-width: 100%;
        height: auto;
        border: 1px solid #ddd;
        border-radius: 4px;
        box-shadow: 0 2px 4px rgba(0,0,0,0.1);
      }
      
      .image-url {
        font-size: 12px;
        color: #666;
        margin-top: 10px;
        word-break: break-all;
      }
    }
  }

  .metadata {
    margin-bottom: 30px;
    
    h4 {
      margin-bottom: 15px;
      color: #333;
    }
    
    .metadata-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
      gap: 15px;
    }
    
    .metadata-item {
      display: flex;
      justify-content: space-between;
      padding: 10px;
      background: #f8f9fa;
      border-radius: 4px;
      
      .label {
        font-weight: 500;
        color: #333;
      }
      
      .value {
        color: #666;
      }
    }
  }

  .parameters {
    h4 {
      margin-bottom: 20px;
      color: #333;
    }
    
    .params-section {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
      gap: 20px;
    }
    
    .param-group {
      background: #f8f9fa;
      padding: 15px;
      border-radius: 6px;
      
      h5 {
        margin-top: 0;
        margin-bottom: 15px;
        color: #007bff;
        font-size: 16px;
      }
    }
    
    .param-item {
      display: flex;
      justify-content: space-between;
      margin-bottom: 8px;
      
      .label {
        font-weight: 500;
        color: #333;
      }
      
      .value {
        color: #666;
        font-weight: 400;
      }
    }
  }
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

@media (max-width: 768px) {
  .test-atmosphere-preview {
    padding: 15px;
    
    .controls {
      flex-direction: column;
      align-items: stretch;
      
      select, button {
        width: 100%;
      }
    }
    
    .preview-section {
      grid-template-columns: 1fr;
    }
    
    .params-section {
      grid-template-columns: 1fr;
    }
  }
}