#controls {
    border-right: 1px solid rgba(255, 255, 255, 0.1);
    left: 0;
}

#controls.collapsed {
    transform: translateX(-100%);
}

#controls label {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: #8a8a8a;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

#controls label:hover {
    color: #a0a0a0;
}

#controls label:has(#page),
#controls label:has(#per-page) {
    width: 40%;
}

#controls select,
#controls input {
    width: 100%;
    padding: 0.75rem 1rem;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.1);
    color: #e0e0e0;
    transition: border-color 0.2s, box-shadow 0.2s;
}

#controls select:focus,
#controls input:focus {
    outline: none;
    border-color: #4a9eff;
    box-shadow: 0 0 0 3px rgba(74, 158, 255, 0.2);
}

#controls select option {
    background: #1a1a2e;
    color: #e0e0e0;
}

.row {
    display: flex;
    gap: 1rem;
    justify-content: space-between;
}

.row>* {
    flex: 1;
}
