.url-input {
    font-family: var(--mono);
    font-size: 0.95em;
    background-color: var(--dark-style-highlight-hover);
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 12px 14px;
    color: var(--text);
    width: 100%;
    transition: border-color 0.2s, box-shadow 0.2s;
}

.url-input::placeholder {
    color: var(--text-dim);
    font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.url-input:focus {
    border-color: var(--accent-color);
    box-shadow: 0 0 0 3px var(--accent-color-dim);
}

.url-input__invalid {
    border-color: var(--accent-color);
    animation: shake 0.3s;
}

@keyframes shake {
    10%, 90% { transform: translateX(-1px); }
    20%, 80% { transform: translateX(2px); }
    30%, 50%, 70% { transform: translateX(-3px); }
    40%, 60% { transform: translateX(3px); }
}