body {
    background-color: #444;
    color: white;
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 5px;
}

h1 {
    color: white;
    text-align: center;
    margin: 0 0 10px 0;
}

.color-preview {
    width: 500px;
    height: 250px;
    margin: 0 auto 10px;
    border: 2px solid #666;
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    padding: 10px;
    font-size: 18px;
    color: #333;
    background-color: rgb(147, 197, 253);
}

.color-preview h3 {
    margin: 0 0 8px 0;
    color: #333;
    line-height: 1.2;
}

.color-preview p {
    margin: 0;
    color: #333;
}

.color-preview p.text-color {
    color: inherit;
}

.pseudovisited {
    text-decoration: underline;
    color: purple;
}

.controls-container {
    width: 500px;
    margin: 0 auto;
    background: #555;
    border-radius: 8px;
    padding: 15px;
}

.tab-container {
    margin-bottom: 10px;
}

.tab-buttons {
    display: flex;
    border-bottom: 2px solid #666;
    margin-bottom: 20px;
}

.tab-button {
    background: #777;
    border: none;
    color: #ffffff;
    padding: 10px 20px;
    cursor: pointer;
    border-radius: 5px 5px 0 0;
    margin-right: 5px;
}

.tab-button.active {
    background: rgb(46, 76, 47);
	text-decoration: underline;
	font-weight: bold;
}

.tab-content {
    display: none;
}

.tab-content.active {
    display: block;
}

.slider-group {
    margin-bottom: 12px;
}

.slider-label {
    display: block;
    margin-bottom: 3px;
    font-weight: bold;
    font-size: 12px;
}

/* Color-specific labels for RGB sliders */
.red-label {
}
.green-label {
}
.blue-label {
 }

.slider {
    width: 90%;
    height: 25px;
    background: #ddd;
    outline: none;
    border-radius: 5px;
}

.slider::-webkit-slider-thumb {
    appearance: none;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    cursor: pointer;
}

.slider.red::-webkit-slider-thumb {
    background: #ff0000;
}

.slider.green::-webkit-slider-thumb {
    background: #00ff00;
}

.slider.blue::-webkit-slider-thumb {
    background: #0000ff;
}

.slider.hsl {
    height: 25px;
    background: transparent;
    border-radius: 5px;
}

.slider.hsl::-webkit-slider-thumb {
    background: #888;
    border: 2px solid white;
    box-shadow: 0 0 5px rgba(0,0,0,0.5);
    -webkit-appearance: none;
    appearance: none;
}

.slider.hsl::-moz-range-thumb {
    background: #888;
    border: 2px solid white;
    box-shadow: 0 0 5px rgba(0,0,0,0.5);
}

/* Chrome-specific slider track styling */
.slider.hsl::-webkit-slider-track {
    background: transparent;
    border: none;
    border-radius: 5px;
}

/* Force Chrome to show gradients on HSL sliders */
#saturationSlider::-webkit-slider-track {
    background: linear-gradient(to right, #888 0%, #888 100%);
}

#lightnessSlider::-webkit-slider-track {
    background: linear-gradient(to right, #000 0%, #888 50%, #fff 100%);
}

/* Hue slider gradient */
#hueSlider {
    background: linear-gradient(to right, 
        #ff0000 0%, #ffff00 17%, #00ff00 33%, 
        #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100%);
    -webkit-appearance: none;
    appearance: none;
}

/* Saturation slider gradient - will be set by JavaScript for Chrome compatibility */
#saturationSlider {
    background: linear-gradient(to right, #888 0%, #888 100%);
    -webkit-appearance: none;
    appearance: none;
}

/* Lightness slider gradient - will be set by JavaScript for Chrome compatibility */
#lightnessSlider {
    background: linear-gradient(to right, #000 0%, #888 50%, #fff 100%);
    -webkit-appearance: none;
    appearance: none;
}

/* Firefox track gradients - will be set by JavaScript */
#saturationSlider::-moz-range-track {
    background: linear-gradient(to right, #888 0%, #888 100%);
}

#lightnessSlider::-moz-range-track {
    background: linear-gradient(to right, #000 0%, #888 50%, #fff 100%);
}

/* Heading HSL slider gradients */
#headingHueSlider {
    background: linear-gradient(to right, 
        #ff0000 0%, #ffff00 17%, #00ff00 33%, 
        #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100%);
    -webkit-appearance: none;
    appearance: none;
}

#headingSaturationSlider {
    background: linear-gradient(to right, #888 0%, #888 100%);
    -webkit-appearance: none;
    appearance: none;
}

#headingLightnessSlider {
    background: linear-gradient(to right, #000 0%, #888 50%, #fff 100%);
    -webkit-appearance: none;
    appearance: none;
}

/* Firefox track gradients for heading sliders */
#headingSaturationSlider::-moz-range-track {
    background: linear-gradient(to right, #888 0%, #888 100%);
}

#headingLightnessSlider::-moz-range-track {
    background: linear-gradient(to right, #000 0%, #888 50%, #fff 100%);
}

/* Link HSL slider gradients */
#linkHueSlider {
    background: linear-gradient(to right, 
        #ff0000 0%, #ffff00 17%, #00ff00 33%, 
        #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100%);
    -webkit-appearance: none;
    appearance: none;
}

#linkSaturationSlider {
    background: linear-gradient(to right, #888 0%, #888 100%);
    -webkit-appearance: none;
    appearance: none;
}

#linkLightnessSlider {
    background: linear-gradient(to right, #000 0%, #888 50%, #fff 100%);
    -webkit-appearance: none;
    appearance: none;
}

/* Firefox track gradients for link sliders */
#linkSaturationSlider::-moz-range-track {
    background: linear-gradient(to right, #888 0%, #888 100%);
}

#linkLightnessSlider::-moz-range-track {
    background: linear-gradient(to right, #000 0%, #888 50%, #fff 100%);
}

/* Visited Link HSL slider gradients */
#visitedLinkHueSlider {
    background: linear-gradient(to right, 
        #ff0000 0%, #ffff00 17%, #00ff00 33%, 
        #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100%);
    -webkit-appearance: none;
    appearance: none;
}

#visitedLinkSaturationSlider {
    background: linear-gradient(to right, #888 0%, #888 100%);
    -webkit-appearance: none;
    appearance: none;
}

#visitedLinkLightnessSlider {
    background: linear-gradient(to right, #000 0%, #888 50%, #fff 100%);
    -webkit-appearance: none;
    appearance: none;
}

/* Firefox track gradients for visited link sliders */
#visitedLinkSaturationSlider::-moz-range-track {
    background: linear-gradient(to right, #888 0%, #888 100%);
}

#visitedLinkLightnessSlider::-moz-range-track {
    background: linear-gradient(to right, #000 0%, #888 50%, #fff 100%);
}

/* Text HSL slider gradients */
#textHueSlider {
    background: linear-gradient(to right, 
        #ff0000 0%, #ffff00 17%, #00ff00 33%, 
        #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100%);
    -webkit-appearance: none;
    appearance: none;
}

#textSaturationSlider {
    background: linear-gradient(to right, #888 0%, #888 100%);
    -webkit-appearance: none;
    appearance: none;
}

#textLightnessSlider {
    background: linear-gradient(to right, #000 0%, #888 50%, #fff 100%);
    -webkit-appearance: none;
    appearance: none;
}

/* Firefox track gradients for text sliders */
#textSaturationSlider::-moz-range-track {
    background: linear-gradient(to right, #888 0%, #888 100%);
}

#textLightnessSlider::-moz-range-track {
    background: linear-gradient(to right, #000 0%, #888 50%, #fff 100%);
}

.input-group {
    display: flex;
    gap: 20px;
    margin-top: 15px;
}

.input-field {
    flex: 1;
}

.input-label {
    display: block;
    margin-bottom: 5px;
    font-weight: bold;
}

.input-box {
    width: 100%;
    padding: 8px;
    border: 1px solid #666;
    border-radius: 4px;
    background: #333;
    color: white;
    font-family: monospace;
}

.copy-button {
    background: #4CAF50;
    color: white;
    border: none;
    padding: 10px 20px;
    border-radius: 4px;
    cursor: pointer;
    font-size: 14px;
    margin-top: 15px;
    width: 100%;
}

.copy-button:hover {
    background: #45a049;
}

.copy-button:active {
    background: #3d8b40;
}

.color-inputs {
    width: 500px;
    margin: 0 auto 10px;
    display: flex;
    gap: 10px;
}

.color-input-group {
    display: flex;
    align-items: center;
    flex: 1;
    margin-bottom: 8px;
}

.color-input {
    flex: 1;
    padding: 8px;
    border: 1px solid #666;
    border-radius: 4px;
    background: #333;
    color: white;
    font-family: monospace;
    font-size: 12px;
    cursor: text;
    transition: border-color 0.2s ease;
    max-width: 110px;
}

.color-input:focus {
    outline: none;
    border-color: #4CAF50;
    box-shadow: 0 0 5px rgba(76, 175, 80, 0.3);
}

.color-input:hover {
    border-color: #888;
}

.input-label-inline {
    display: inline-block;
    margin-right: 8px;
    font-weight: bold;
    font-size: 12px;
    color: white;
    white-space: nowrap;
}

.copy-icon {
    background: #555;
    color: white;
    border: 1px solid #666;
    border-radius: 4px;
    padding: 8px 10px;
    cursor: pointer;
    font-size: 14px;
    margin-left: 5px;
}

.copy-icon:hover {
    background: #666;
}

.main-layout {
    display: flex;
    gap: 20px;
    max-width: 800px;
    margin: 0 auto;
    align-items: flex-start;
}

.left-column {
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex-shrink: 0;
}

.right-column {
    flex: 1;
}

.view-styles-btn {
    background: #007bff;
    color: white;
    border: none;
    padding: 8px 12px;
    border-radius: 4px;
    cursor: pointer;
    font-size: 12px;
    font-weight: bold;
    white-space: nowrap;
    width: fit-content;
}

.view-styles-btn:hover {
    background: #0056b3;
}

.export-css-btn {
    background: #28a745;
    color: white;
    border: none;
    padding: 8px 12px;
    border-radius: 4px;
    cursor: pointer;
    font-size: 12px;
    font-weight: bold;
    white-space: nowrap;
    width: fit-content;
}

.export-css-btn:hover {
    background: #1e7e34;
}

.color-inputs-tab {
    display: flex;
    gap: 10px;
    margin-bottom: 15px;
}
