@tailwind base;
@tailwind components;
@tailwind utilities;

:root {
    --bg-color: #323437;
    --bg-secondary-color: #2c2e31;
    --main-color: #e2b714;
    --caret-color: #e2b714;
    --sub-color: #646669;
    --text-color: #d1d0c5;
    --error-color: #ca4754;
    --font-main: 'Roboto Mono', monospace;
}

[data-theme="light"] {
    --bg-color: #e5e5e5;
    --bg-secondary-color: #ffffff;
    --main-color: #d97706;
    --caret-color: #d97706;
    --sub-color: #9ca3af;
    --text-color: #374151;
    --error-color: #dc2626;
}

[data-theme="oled"] {
    --bg-color: #000000;
    --bg-secondary-color: #121212;
    --main-color: #00e600;
    --caret-color: #00e600;
    --sub-color: #404040;
    --text-color: #a0a0a0;
    --error-color: #ff0000;
}

body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    background-color: var(--bg-color);
    color: var(--sub-color);
    font-family: var(--font-main);
    transition: background-color 0.3s, color 0.3s;
}

/* Custom Range Input Styling */
input[type=range] {
    -webkit-appearance: none; 
    background: transparent; 
    height: 6px;
    background: var(--sub-color);
    opacity: 0.5;
    border-radius: 4px;
    cursor: pointer;
}

/* Chrome/Edge/Safari */
input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
    height: 16px;
    width: 16px;
    background: var(--main-color);
    border-radius: 50%;
    margin-top: -5px; /* Centers thumb on the track */
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.5);
    transition: transform 0.1s;
}

input[type=range]::-webkit-slider-thumb:hover {
    transform: scale(1.2);
}

/* Firefox */
input[type=range]::-moz-range-track {
    width: 100%;
    height: 6px;
    background: var(--sub-color);
    border-radius: 4px;
    cursor: pointer;
}

input[type=range]::-moz-range-thumb {
    height: 16px;
    width: 16px;
    background: var(--main-color);
    border: none;
    border-radius: 50%;
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.5);
    cursor: pointer;
    margin-top: 0;
}

input[type=range]:focus {
    outline: none; 
}

/* Scrollbar for textarea */
textarea::-webkit-scrollbar {
    width: 6px;
}
textarea::-webkit-scrollbar-track {
    background: transparent; 
}
textarea::-webkit-scrollbar-thumb {
    background-color: var(--sub-color); 
    border-radius: 4px;
}

.pivot-char {
    color: var(--error-color); /* Red color for the focus letter */
    font-weight: bold;
}

/* RSVP Container logic */
#rsvp-word-container {
    display: flex;
    align-items: center;
    justify-content: center;
}
