/* style-dark.css - Dark Theme Styles */

/* Solarized Base Colors */
:root {
  --base03:  #002b36;
  --base02:  #073642;
  --base01:  #586e75;
  --base00:  #657b83;
  --base0:   #839496;
  --base1:   #93a1a1;
  --base2:   #eee8d5;
  --base3:   #fdf6e3;
  --yellow:  #b58900;
  --orange:  #cb4b16;
  --red:     #dc372f; /* Slightly adjusted from dc3545 */
  --magenta: #d33682;
  --violet:  #6c71c4;
  --blue:    #268bd2;
  --cyan:    #2aa198;
  --green:   #859900;
}

body {
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 20px;
    background-color: var(--base03); /* Dark background */
    color: var(--base1); /* Light grey text */
    transition: background-color 0.3s, color 0.3s;
}

h1 {
    text-align: center;
    color: var(--base2); /* Lighter heading */
    margin-bottom: 30px;
}

#themeToggleBtn {
    padding: 8px 15px;
    font-size: 14px;
    cursor: pointer;
    border: 1px solid var(--base01); /* Darker border */
    border-radius: 4px;
    background-color: var(--base02); /* Dark background */
    color: var(--base1); /* Light text */
}
#themeToggleBtn:hover {
    background-color: var(--base01);
    color: var(--base3);
}

/* --- Search and Selection Area --- */
.controls-container {
    max-width: 800px;
    margin: 20px auto;
    padding: 20px;
    background-color: var(--base02); /* Slightly lighter dark bg */
    color: var(--base1); /* Ensure text color contrasts */
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.4); /* Darker shadow */
    border: 1px solid var(--base01); /* Darker border */
    transition: background-color 0.3s, border-color 0.3s;
}

.search-container {
    margin-bottom: 15px;
    position: relative;
}

.search-container input[type="text"] {
    width: 100%;
    padding: 12px;
    font-size: 16px;
    box-sizing: border-box;
    border: 1px solid var(--base01);
    border-radius: 4px;
    background-color: var(--base03); /* Dark input bg */
    color: var(--base2); /* Light input text */
}
.search-container input[type="text"]::placeholder {
    color: var(--base00);
}


.suggestions {
    position: absolute;
    top: 100%; left: 0; right: 0;
    border: 1px solid var(--base01); border-top: none;
    background: var(--base02);
    z-index: 1000;
    max-height: 200px;
    overflow-y: auto;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
}

.suggestion-item {
    padding: 10px 12px;
    cursor: pointer;
    font-size: 15px;
    color: var(--base1); /* Light text */
}

.suggestion-item:hover {
    background-color: var(--base01); /* Slightly lighter dark hover */
    color: var(--base3);
}

.tense-selector {
    margin-bottom: 15px;
    text-align: center;
}

.tense-selector label {
    margin-right: 8px;
    font-weight: bold;
    color: var(--base1);
}

.tense-selector select {
    padding: 8px 12px;
    font-size: 16px;
    border: 1px solid var(--base01);
    border-radius: 4px;
    min-width: 250px;
    background-color: var(--base03); /* Dark select */
    color: var(--base2); /* Light text */
}

optgroup {
    font-weight: bold;
    font-style: italic;
    color: var(--base0); /* Slightly dimmer group label */
    background-color: var(--base02); /* Match control container */
}

option {
    padding-left: 10px;
    background-color: var(--base03); /* Match select background */
    color: var(--base2); /* Light option text */
}
/* Style selected option maybe? */
select option:checked {
    background: var(--blue); /* Example: highlight selected */
    color: var(--base3);
}


.selected-verbs-container {
    margin-bottom: 15px;
    padding: 12px;
    border: 1px solid var(--base01);
    border-radius: 5px;
    background: var(--base03); /* Match body dark */
    min-height: 40px;
    color: var(--base1);
}

.selected-verbs-container strong {
    color: var(--base1);
    margin-right: 8px;
}


/* --- Dark Theme Button Styles (Solarized) --- */
.selected-verbs-container span.verb-tag {
    margin-right: 8px; margin-bottom: 5px; display: inline-block; cursor: pointer;
    background: var(--blue);
    color: var(--base3); /* Light text for contrast */
    padding: 6px 12px; border-radius: 15px; font-size: 14px; transition: background-color 0.2s ease; border: none;
}
.selected-verbs-container span.verb-tag:hover { background: #1a7fbf; text-decoration: line-through; } /* Slightly adjusted blue hover */

.clear-button {
    cursor: pointer; color: var(--base3);
    background: var(--red);
    border: none; padding: 8px 15px; border-radius: 4px; font-size: 14px; float: right; margin-top: -5px; transition: background-color 0.2s ease;
}
.clear-button:hover { background: #c12f2a; } /* Slightly adjusted red hover */

button.check-single {
    background-color: var(--yellow);
    color: var(--base03); /* Dark text on yellow */
    border: none; padding: 8px 10px; font-size: 14px; min-width: 60px; border-radius: 4px; flex-shrink: 0; cursor: pointer; transition: background-color 0.2s ease;
}
button.check-single:hover { background-color: #a07800; } /* Slightly adjusted yellow hover */

button.check-all-button {
   background-color: var(--cyan);
   color: var(--base3); /* Light text on cyan */
   border:none; border-radius: 4px; display: block; margin: 20px auto 5px auto; padding: 10px 20px; font-size: 15px; cursor: pointer; transition: background-color 0.2s ease;
}
button.check-all-button:hover { background-color: #208a80; } /* Slightly adjusted cyan hover */
/* --- End Dark Theme Button Styles --- */


/* --- Test Area --- */
#testContainer {
    max-width: 800px;
    margin: 20px auto;
}

.verb-section {
    background-color: var(--base02); /* Match controls */
    color: var(--base1); /* Light text */
    padding: 25px;
    margin-bottom: 25px;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.4);
    border: 1px solid var(--base01);
    transition: background-color 0.3s, border-color 0.3s;
}

.verb-section h3 {
    text-align: center;
    margin-top: 0;
    margin-bottom: 25px;
    color: var(--blue); /* Use solarized blue */
    font-size: 1.4em;
}

.person-container {
    display: flex;
    align-items: center;
    margin-bottom: 12px;
    gap: 10px;
    border-bottom: 1px solid var(--base01); /* Darker border */
    padding-bottom: 12px;
    transition: border-color 0.3s;
}
.person-container:last-child { border-bottom: none; padding-bottom: 5px; }

.person-container span:first-child { /* Pronoun */
    min-width: 70px; text-align: right; font-weight: bold;
    color: var(--base1); /* Light text */
    flex-shrink: 0;
}

.person-container input[type="text"] {
    flex-grow: 1; margin-bottom: 0; padding: 10px;
    border: 1px solid var(--base01); border-radius: 4px;
    background-color: var(--base03); /* Dark input */
    color: var(--base2); /* Light input text */
}

.feedback {
    font-size: 14px; font-weight: bold; min-width: 160px; text-align: left; padding-left: 10px; flex-shrink: 0;
    /* Color set dynamically */
}

/* Adjusted feedback colors for dark theme contrast if needed */
.feedback.correct { color: var(--green); }
.feedback.incorrect { color: var(--red); }


#urlInfo { font-size: 0.9em; color: var(--base00); margin-bottom: 15px; text-align: center; }
#noTenseMessage { text-align: center; padding: 20px; color: var(--base00); font-style: italic; }

.clear-button + div { clear: both; }